Professional Documents
Culture Documents
47 Computer Programming
you
LO3
Be able to evaluate a computer program.
Table of Contents
INTRODUCTION....................................................................................................................3
ACTIVITY 1.............................................................................................................................3
Evaluation of APIs.................................................................................................................3
Qualities of APIs.................................................................................................................4
Abstraction Level................................................................................................................4
Consistency.........................................................................................................................4
Discoverability....................................................................................................................4
Concept Map Method.........................................................................................................4
Transformation....................................................................................................................5
Assessment of SDLC Stages..................................................................................................6
Advantages.............................................................................................................................6
Disadvantages.........................................................................................................................7
Phases of SDLC......................................................................................................................7
Planning..............................................................................................................................8
Design.................................................................................................................................8
Coding/Implementation......................................................................................................8
Testing................................................................................................................................8
Deployment.........................................................................................................................9
Maintenance...........................................................................................................................9
ACTIVITY 2...........................................................................................................................10
Pseudo Code for Quick math Application............................................................................10
Program Plan........................................................................................................................10
Math Operators in Java.........................................................................................................11
Addition............................................................................................................................11
Subtraction........................................................................................................................11
Multiplication....................................................................................................................12
Division.............................................................................................................................12
Design Curriculum...............................................................................................................12
ACTIVITY 3...........................................................................................................................14
Code......................................................................................................................................14
Explanation...........................................................................................................................15
Sequences..........................................................................................................................16
Computer Programming 4
Loops................................................................................................................................16
Selections..........................................................................................................................17
Development Phase..............................................................................................................17
Functional Specifications..................................................................................................17
Divide and Conquer..........................................................................................................18
Architecture Diagrams......................................................................................................18
Bug Tracking........................................................................................................................18
User Testing..........................................................................................................................18
Testing Suite.........................................................................................................................19
ACTIVITY 4...........................................................................................................................19
Application Testing..............................................................................................................19
Performance Testing.........................................................................................................19
Software Testing Methodologies..........................................................................................20
Testing Tools and Techniques..........................................................................................20
Test Management Tools.......................................................................................................20
Functional Testing Tools......................................................................................................21
Load Testing Tools...............................................................................................................21
Testing Plan of Quick Math Application..............................................................................21
Test Cases.............................................................................................................................22
Test Scenario........................................................................................................................22
Testing Process.....................................................................................................................23
The significance of Beta Testing for Quick Math Application............................................23
Bug Detection.......................................................................................................................23
Quality Assurance................................................................................................................24
Reliability.............................................................................................................................24
Product Awareness...............................................................................................................24
Recommendations for Improvement....................................................................................24
Conclusion............................................................................................................................25
References...............................................................................................................................27
Computer Programming 5
Computer Programming
INTRODUCTION
The facts confirm that technology-based strategies and teaching methods are
convincing to examine their ability to use technology in the reading room. There is a
conventional belief that understudies who are passionate about PC programming have a
strong talent (Vaidya, 2017). In any case, guardians and teachers are wondering how PC
programming can help children improve their math skills, whilst learning to count is
increasingly seen as a good time. In modern times and in time technology, programming is a
key language that involves the creation of many guidelines that a PC framework understands
create a software application that children can use to tackle math problems, and to point out
some aspects related to the software improvement process, such as: Structure, progress,
ACTIVITY 1
Evaluation of APIs
APIs (Application Programming Interfaces) are seen as the link between the
components of a software. Software developers work with APIs in various ways to make
them one of the basic segments of current software improvement. In any case, the evaluation
and maintenance of the properties of APIs is often overlooked (Beebe, 2017). Better methods
for API assessment and measurements to assess API quality are currently being researched.
The API I want to use to develop my Brisk Math application is the MATLAB Restful API
(Nash¸ 2018). The important preferred location for using this API is that it allows
functionality to be explored whilst external servers are used with the JSON application for
Computer Programming 6
MATLAB information types. It also helps solve the problem by determining storage space by
doing a calculation. This offers the opportunity to learn basic factors, skills and meaningful
The API is full of definitions and resolutions for building and embedding
With the API, an object or administration can speak to different objects and administrations
without understanding how they are activated. This can change the progress of the application
and cost time and money. When designing new devices and objects or monitoring existing
ones, the API gives you flexibility (Shih¸ 2017). Rearrange planning, planning and use; and
offer opportunities for progress. APIs have been considered contracts for some time.
Documents understandable for the parties: When party 1 sends an external planning request,
this product from party 2 responds as API improves the way in which engineers coordinate
new sections for coordinate applications to coordinate the current design, the company and IT
teams brings together (Brown and Wilson, 2018). Companies have to change quickly
change another industry with a different program. Seriously, it is important to help with the
application designs through the API. APIs are an easy way to unite frames by improving the
on-premises cloud application. However, they also allow data to be transferred to customers
and other external clients. Open APIs correspond to the individual assessment of companies
because they can optimize and expand communication with accomplices and adapt data
(Beebe, 2017).
Computer Programming 7
Qualities of APIs
A decent API is easy to understand and decipher what the consequences of an API
rating are. It is therefore necessary to evaluate an API based on its characteristics (Gustafson,
2017).
Abstraction Level
particular problem when using the API (Brown and Wilson, 2018).
Consistency
The structure of the user interface must be easy to use to make learning the API easier
and cheaper. Likewise, engineers don't have to learn new ideas and apply the idea of
Discoverability
gradually exportable. In any case, the utility depends on the application of the clients, so it
can be tracked step by step as customers expect the ideal results from the API (Murray,
2017).
to measure an API. In any case, there are contrasts between an API and a GUI. To structure
the API of the application in a structured way, the concept map strategy is the right
evaluation technique. This technique is often used to decide how easy it is to use an API with
Computer Programming 8
an essential idea as an idea card to examine the information and encounters of end customers
(Murray, 2017).
The mapping approach technique includes members who represent the relationship
between the real program and the API as a work in progress. Members are asked to renew
their idea card. They have to be split up by the software engineers if you change or renew the
guide with ideas (Gorkemli and Karaboga, ). This research on mapping ideas ensures that
software designers keep a strategic distance from potential problems after the organisational
phase by explaining errors, usability issues, and misjudgements. The main advantage of this
strategy is to build the number of idea cards during the cross-sectional structure of the
(Murray, 2017).
Transformation
Changes are important to exchange information when dialers are clear on different
sides of the exchange (Nash¸ 2018). Two dialects can have similar ideas. In this case it is
possible to imagine something that comes close to the picture of the balance sheet. In such
cases, only changes are necessary to interpret the language from one sampler to another.
Duplexes are currently moderate bones. However, one language can be more inventive than
the other. At a time when sources of origin are becoming more and more conceptual, source
ideas can lead to the targeted development of ideas (Gorkemli and Karaboga, ). For example,
changing the status of a state machine can result in a series of lines of code that can be
compared to categories in a language such as C ++. At a time when the data source is more
accurate than the target, additional data is needed to determine what the comparative target
A typical model is the point at which the source is the programming language and the
destination is the display language (Messer, et al., 2018). For example, a change may require
the addition of annotations in the code to make it easier to assign some C ++ classes to UML
categories. Under rounding conditions (model transitions in code and from code back to the
model), the model may need to have comments added to the code. For example, you need to
add a comment that will be added to the code when you switch part-time on a state machine.
The note contains information that can be used to reset the code to the machine status
(Dougherty, 2017).
There are some software promotion methods that can be characterised during the
are different models, for example the waterfall model, the agile model, the spiral model and
the prototype model (Faulkner and Herman, 2016). Each of these models follows a specific
lifecycle to ensure the feasibility of software progress procedures. The improvement of the
"Snappy Math" application follows the technique of the prototype model (Beebe, 2017).
confirmation. After confirmation, the program is prepared for coding, testing, use and
support. The prototype is manufactured on site at the customer. With this prototype, the
customer can determine the outline of the perfect object. This is the perfect prerequisite for a
complex and immense software program that has been created (Gorkemli and Karaboga, ).
Advantages
Disadvantages
• It can take a long time for the structure of the customer to change.
• The customer can be confused by the separation of prototype and validated application.
Computer Programming 11
Phases of SDLC
Planning
Currently the needs identified with the problem have been collected. This phase is the
basis for software developers and managers. This includes meeting with customers, partners
and end customers to determine the criteria appropriately (Messer, et al., 2018). In order to
create the Snappy Math software program, I would be responsible for collecting data from the
customer about the breeding program desired, for example the scientific opportunities that the
program uses by determining the learning opportunities of students of certain age groups.
After a summary of the requirements, they are checked and merged with the resulting
Design
This phase includes a framework composed of the need to summarise the key
software development period. Based on the information gathered, I will determine the
assumptions and information about the equipment and software so that I can use the post in
the next phase. In addition, this phase will also include a software analyser to test the
Coding/Implementation
After the setup phase, the decision about the work is complete and the actual
development of the program begins. The code essentially focuses on fulfilling the customer's
desired assumption. The code contains important functions of the "Brisk Math" program.
Collection of skills, the logarithmic articulation and the maintenance of the vocabulary. This
Computer Programming 12
is the longest period in the software development lifecycle as some customer requirements
Testing
The resulting code tries to examine how well the assumptions are that the end result
can answer mathematical questions as desired. Various types of tests were carried out during
this period, one of which was part of an important pilot test, a component test and a
Deployment
After testing, the article will ultimately be sent to the customer on request. When
progress is required, changes in development are taken into account to reflect the changes
required. In addition, bugs are also fixed for the latest version of the software (Gustafson,
2017).
Maintenance
The customer currently uses the software framework he has created and asks the
requirements and questions that need to be answered correctly. This process, in which the
ACTIVITY 2
Program Plan
Quick Math is based on the language version of Java. The program configuration
includes many built-in math administrators to play basic math skills. These administrators are
therefore basic, Java also includes the Math class with the techniques for performing
The following is a part of the essential math managers that must be used in code to
Addition
Subtraction
Computer Programming 15
Multiplication
Division
Design Curriculum
This application of Quick Math was done with a major motivation for the theoretical
phase include:
• Maintaining the focus of the work to be investigated on the plan of the mathematical
• The configuration is largely based on the idea of understanding second degree studies,
knowing their thoughts and ideas to understand math problems, and examples of training in
• Another thought recalls the focus to decide and deal with the delicate confusion and
confusion of under-studies.
• Build an understanding of under-studies where interest, inspiration, and the ability to solve
• Develop skills whilst attracting sub-studies in innovative math assignments and practices
that ultimately critically improve your mindset. This also builds on your applied
• Use some types of formal and informal development reviews to improve understanding of
• Creating desires for the reading room to promote understanding of the course by building
ACTIVITY 3
Code
Computer Programming 18
Computer Programming 19
Explanation
The code for the Quick Math application contains various functions that depend on
the language development of Java. The application is largely planned to improve the math
problems whilst
increasing Understudy's enthusiasm for programming. The software is easy for students too,
helping them improve their math skills and inventiveness when they make arrangements in an
The important explanation that Java uses for protests is the power with which
standards are structured. In addition, the basic construction of programming and calculations
will neglect the essential programming developments of other programming dialects (Messer,
et al., 2018). The main developments used in using the Quick Tangle application are:
• Sequences
• Loops
• Selection
Sequences
next arranged activity in a given request. A follow-up also includes some activities in an
orderly fashion (Vaidya, 2017). The program plays these activities without the likelihood of
Computer Programming 20
any other activity. Structure is currently used to carry out various activities, e.g. the control of
logarithmic articulations and the determination of the square base of a number (Faulkner and
Herman, 2016).
Loops
long as the condition is met. The condition, which is characterised by the up and down, is
checked and updated upon arrival in the approved state (Shih¸ 2017). Part of the circular
structure normally used is for, then and taking this circle into account. Loops are used to find
2018).
Selections
program can be effectively managed using the basic leadership selection structure such as IF,
THEN and ELSE to change the direction of the different parts of the program (Shih¸ 2017).
In addition to sequences and loops, selections are one of the most important rational meetings
in programming. Part of the basic determination instruction contains IF and IF-ELSE (Nash¸
2018).
Development Phase
The development phase is the longest development period for Quick Math
applications. This included combining very practical requirements that should have been
created in the application (Gustafson, 2017). The different phases of the development phase
include:
Computer Programming 21
Functional Specifications
A useful provision is a special report from a company that contains the general
highlights and details of the Quick Math application. Whilst collecting application
development requirements, the useful deployment that is the key archive for software
developers must be cancelled. A useful provision also contains enough data for software
This phase essentially consists of three sections, namely the operational requirements,
the operational design and the coding. In addition, each of these phases is expanded in part
from the "Operational Requirements" phase to the operational design (Shih¸ 2017).
Architecture Diagrams
Another important phase of the development phase depends on the need to propose a
building configuration for the task: a structural report. This phase includes;
Bug Tracking
A bug is mentioned as a defect or error in the code that causes it to fail and produce
undesirable results. During the development of the Quick Math application software, some
errors were discovered towards the end of the development phase, in which in particular
mathematical articulations are explained whilst the correct answers are not being created.
Computer Programming 22
These errors can affect the productivity of the software framework. In any case, the errors
were identified and corrected in order to keep the product quality high (Faulkner and
Herman, 2016).
User Testing
User testing is another phase of the software testing process, in which the software is
tested to ensure that it can actually perform the required tasks in demonstrable circumstances,
as indicated in the data. There were teachers and students who had the opportunity to test the
software and test its durability and accuracy (Beebe, 2017). Since this phase is one of the
basic and most important development periods, the software project methodology must take
place before the recently created software framework for end users (Dougherty, 2017).
Testing Suite
The user-friendly method determines how simple software settings can be used for a
range of end users (Dougherty, 2017). The Quick Math Suite testing process takes into
account the perception of users trying to bypass the necessary jobs that the software
framework can create for different types of plans, from the user interface to the physical
software products. Everything was realigned from the first phase of development through to
ACTIVITY 4
Application Testing
The application testing process is a process that must be carried out properly after the
development phase. The test period is a comprehensive angle of the structure from the
use, ease of use and consistency of the tested software (Nash¸ 2018).
Performance Testing
Once the developer know that application is useful and responsive, he/she need to test
the performance under too high a voltage. Performance testing involves testing at different
speeds on the web, just like a normal load (Hawkins, et al., 2017). Even in broader
environments, it can make sense to test the overall performance of a web server at a basic
level using a page speed computer test, in which the page speed influences the customer
experience and the SEO of the website/application. This article provides a good insight into
how basic speed tests can be done with free devices and how data can be used to create an
improvement plan (Faulkner and Herman, 2016). It's not really a legitimate high-end effect
and stress test, but it's still a decent place to start. Stress tests are useful for determining the
goals of an application. This means that the application has to take a lot more precautions
until it stops working. All in all, there is a need to find the limits of the application before
Methods are methods and techniques to ensure software productivity during testing.
The software test methodology focuses on all areas, from unit tests to mix tests to various
Various tools and technologies are available for testing the software. These devices
have both open and paid devices. In addition, part of the test equipment is used directly for
UI tests, DB tests, stress tests, security and performance tests. Some tools and technologies
Computer Programming 24
The most important idea is now a practical test (Messer, et al., 2018). Exams are isolated in
The testing process for test equipment focuses on all parts of the test to create the best
and most effective software testing tools for testing software applications. The examination
board contains many program test exercises (Faulkner and Herman, 2016). This method is
basic, complete, and careful to ensure that the tests are successful. There are several
executable tests, most commonly “Test, Zephyr, XQual and QAC Complete” (Faulkner and
Herman, 2016).
Practical tests are part of the product development process, in which attention to detail
is paramount. Data tests must be possible both physically and with automation. In addition,
useful tests typically involve inserting information to use the software to measure software
implementation (Beebe, 2017). In addition, data tests are put together with practical tests to
ensure that the exhibition is on schedule. Probably the most commonly used test tools are
The test load process involves applying typical test conditions to software
applications. Runs tests under standard conditions. The overloaded test guarantees that a
particular utility of a program or software framework is running, whilst the load test takes too
much workload to solve in many situations (Faulkner and Herman, 2016). There is also a
stress test method to suppress software frameworks, peripherals, systems, and servers that
move toward fragmented details. In addition, stress tests must be conducted under controlled
conditions by comparing the capabilities of different frames with a critical examination of the
In order to test mathematical programs, there are various scenarios for evaluating
Test Cases
Test Scenario
Beta Testing
Test Cases
infrastructure and the variables that are to be achieved by confirming the normal results of the
software program test process (Nash¸ 2018). For a quick math test, you can experiment with:
Computer Programming 26
Test Scenario
A test scenario can be described as a software component that can be tested for
usability. Otherwise called test status. It includes software analysis tools that help users in
this current world be sensitive to applications that use software sample programs during the
Testing Process
Application testing involves a beta method that includes legitimate quality assurance
to identify application problems. As I test the program, I build a strong system for
communicating my programs with teachers and students to help them improve the utility of
the program. During the test process, all mistakes and difficulties are increased by the
organisers and technicians during the beta test phase. The user can understand the
introduction of the Quick Math program with this testing technology, everything that is
Computer Programming 27
considered important for the current quality assurance of the software created (Gustafson,
2017).
When improving programming, the beta test is the second programming period in
which the target group examines the article. Beta is another Greek character. Initially, the
term alpha test meant an important test period in the production process. The main phase
consists of component tests, partial tests and frame tests. Beta testing can be viewed as
"forgiveness". Beta tests are also known as Customer Endorsement Test or Final Customer
Testing (Gustafson, 2017). The programming is now improved and the applications are tested
and confirmed by the target group. Early customer conversations return to designers who see
incredible improvements in industrial emissions. Voluntary or paid testers use the product for
internal testing. For generally recognised programming tasks, engineers can download the
trial version free of charge and use it online free of charge. Another reason why the
programming is generally available is to see it and possibly vote for the last element
(Dougherty, 2017).
Bug Detection
The first and most important explanation for this test method is the detection of errors.
As Jorgensen emphasized, errors can be identified in the test phase as soon as they are
resolved, so that users can find application software qualifications without causing
inconvenience and inequalities (Brown and Wilson, 2018). Whilst testing the Quick Math
application, problems occurred on a server that were different from the test group. This
included debugging exponential properties, finding a square with quadratic numbers, and
Quality Assurance
Another important advantage is the unlimited quality certification. The exam was
currently planning a challenging assessment process before the Quick Maths program was
organised to prepare for it. Similarly, this means that not all efforts will be lost until you have
Reliability
Beta tests ensure that the finished software product depends on the user's image,
especially if it is divided into different phases, including different users. In this way, it is
incredibly important to look at the exhibition and the speed of the latest product (Messer, et
al., 2018).
Product Awareness
With the beta test, users can also understand the application and its uses. In the
case of the Quick Math program, users have the opportunity to give trainers, sub-funders and
administrators the opportunity to get the most out of this software program whilst improving
their math skills. In addition, this attention will help students better understand the use of
software and develop enthusiasm for the details of mathematical programming problems
(Beebe, 2017).
Testing the Quick Math program shows that the software is so advanced that optimal
results are achieved. In any case, part of the problem on delivery must be resolved before the
user plans the software. In addition, users, especially teachers and students, will learn about
the entire software utility and identify additional software framework bugs that software
support will correct. Since the software that is created gives the company the ability to make
Computer Programming 29
changes based on its needs, these changes are activated by development to the extent desired
The overall rating of the Quick Math application showed that Quick Math is one of
the math applications for young people that freshmen use to make estimates with accurate
results as quickly as possible. In addition, they are also evaluated by the software framework
with which they are evaluated. The test results show that practicable PC-based teaching is
linked to the idea of learning software. An important recommendation is to keep the software
advantages.
This gives the participants a better understanding of how the learning software works. The
software encourages participants to familiarise themselves with the relevant course materials
software framework with a solid component so that understudies can be linked to the teaching
Conclusion
extension of the math learning software for children. The application will be energetic,
charming and productive to work in the class. This will also have an incredible impact on
maths in college with the help of technology that will increase their regular interest in optimal
use. This application reinforces the learning plan and supports the trainers in improving the
Computer Programming 30
samples. Accordingly, the curriculum should be planned to emphasize the use of technology
Software developers compile and test code that enables computer programs and
projects. You can interpret developer and architect programs in usable code. You can also
update or expand existing projects or test programs for errors, find and fix faulty lines of
code. According to the U.S. Department of Labor (BLS), software engineers in the U.S. will
telecommunications from countries with lower tariffs. In any case, developers with a four-
year certification and information about the latest software must continue to meet all
requirements for productive business activities. BLS reports that software developers
achieved an average benefit of around $ 82,280 in 2018, which was well above the national
average. The top 10% of employees, typically those with the most education and experience,
References
Brown, N.C. and Wilson, G., 2018. Ten quick tips for teaching programming. PLoS
computational biology, 14(4).
Dougherty, J.P., 2017. MATH COUNTS Does mathematics serve computing as a support or
Faulkner, B. and Herman, G.L., 2016, June. Espoused Faculty Epistemologies for
Gorkemli, B. and Karaboga, D., 2019. A quick semantic artificial bee colony programming
Gustafson, J.L., 2017. The End of Error: Unum Computing. Chapman and Hall/CRC.
Hawkins, R.O., Collins, T., Hernan, C. and Flowers, E., 2017. Using computer-assisted
Messer, D., Thomas, L., Holliman, A. and Kucirkova, N., 2018. Evaluating the effectiveness
pp.2879-2888.
Nash, J.C., 2018. Compact numerical methods for computers: linear algebra and function
minimisation. Routledge.
Vaidya, N.V., 2017. Application of Quick Simplex Method on the Dual Simplex Method (A