0% found this document useful (0 votes)
76 views45 pages

Assignment 1: Qualification BTEC Level 5 HND Diploma in Computing

This document describes an assignment to develop a student management system. It includes: 1) An introduction outlining the need for an easy-to-use student management software to help teachers. 2) An analysis of the software development life cycle and common models used. 3) An analysis of the program requirements including data types, structures, use cases, and flowcharts. 4) An implementation section with the code and results from testing the program.

Uploaded by

Nguyễn Bộ
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
76 views45 pages

Assignment 1: Qualification BTEC Level 5 HND Diploma in Computing

This document describes an assignment to develop a student management system. It includes: 1) An introduction outlining the need for an easy-to-use student management software to help teachers. 2) An analysis of the software development life cycle and common models used. 3) An analysis of the program requirements including data types, structures, use cases, and flowcharts. 4) An implementation section with the code and results from testing the program.

Uploaded by

Nguyễn Bộ
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 45

ASSIGNMENT 1

Qualification BTEC Level 5 HND Diploma in Computing

Unit number and title Unit 1: Programming

Submission date 27/04/2021 Date Received 1st submission

Re-submission Date Date Received 2nd submission

Student Name NGUYEN CONG BO Student ID GDH16552

Class GCH0904 Assessor name LAI MANH DUNG

Student declaration

I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism. I understand that
making a false declaration is a form of malpractice.

Student’s signature Bo

Grading grid

P1 M1 D1
 Summative Feedback:  Resubmission Feedback:

Grade: Assessor Signature: Date:


Lecturer Signature:
Contents
I. INTRODUCTION ................................................................................................................................................................................... 6
II. SOFTWARE DEVELOPMENT LIFE CYCLE. .............................................................................................................................................. 7
1. What is Algorithms analysis ? .......................................................................................................................................................... 7
2. Definition software development life cycle. .................................................................................................................................... 8
2.1 Requirements analysis ............................................................................................................................................................................. 11
2.2 Design....................................................................................................................................................................................................... 12
2.3 Developments .......................................................................................................................................................................................... 12
2.4 Coding and documentation...................................................................................................................................................................... 12
2.5 Testing & Debugging ................................................................................................................................................................................ 12
2.6 Maintenance ............................................................................................................................................................................................ 13
3. Some popular models of SDLC ......................................................................................................................................................................... 13
III. ANALYSIS AND DESIGN..................................................................................................................................................................................... 14
1. Analysis the program and produce corresponding.......................................................................................................................................... 14
2. Data types, data structures .............................................................................................................................................................................. 15
3. Use case and flowchart .................................................................................................................................................................................... 17
3.1 Use case ................................................................................................................................................................................................... 17
3.2 Flowchart ................................................................................................................................................................................................. 18
4. Identify 2 different selections statement. ....................................................................................................................................................... 23
3.1 Switch case statement ............................................................................................................................................................................. 23
3.2 “if…else” statement ................................................................................................................................................................................. 24
5. Identify loop statement. .................................................................................................................................................................................. 27
IV. Implementation ............................................................................................................................................................................................... 29
1. Code. ................................................................................................................................................................................................................ 29
2. Result ............................................................................................................................................................................................................... 35
V. Conclusion ............................................................................................................................................................................................................ 44
References .................................................................................................................................................................................................................. 44
Table of Pictures
Figure 1. Software development life cycle (Slide 10 in Lecture 1) .............................................................................................................. 9
Figure 2. Step by step in Software development life cycle ....................................................................................................................... 10
Figure 3. Explain step by step (Tutorialspoint, 2020) ............................................................................................................................... 11
Figure 4. Produce corresponding menu base ........................................................................................................................................... 15
Figure 5. Use case diagram about Manage Student System. ................................................................................................................... 17
Figure 6. Flowchart for Menu base. .......................................................................................................................................................... 18
Figure 7. Flowchart for Function 1. ........................................................................................................................................................... 20
Figure 8. Flowchart for Function 2. ........................................................................................................................................................... 21
Figure 9. Flowchart for Function 3. ........................................................................................................................................................... 22
Figure 10. Way the "if...else" statement work. ............................................................................................................................................................ 26
I. INTRODUCTION.
- Every nation around the world has continuously centred on building strong instruction. Instruction is continuously created
and continuous since having information is effective. Each day we continuously make more devices and program for
understudies, making them simpler to memorize, but the truth that the software to back instructors isn't much. More
particularly, it is almost the administration of understudies, we have continuously been commonplace with the picture of
instructors with notebooks and understudy data, which is the foremost common and positive way, but the Other than, there
will be particular challenges and drawbacks: misplaced books, effortlessly befuddled data, effectively harmed such as damp
or torn books, troublesome to discover data and channel data, etc..

- Embarking with an instruction back program improvement company, I arranged a program that might offer assistance
instructors oversee their understudies more effortlessly, and the program didn't have one. What is as well complicated, any
educator who isn't great at data innovation can utilize it.

- To construct this extend, I will begin with a user-oriented instructor, inquiring from them to have a private program to
guarantee the student's individual data, the program permits Enter data, print data and channel, classify understudies.

- The objective is teachers' fulfilment, expanded educator execution, laying the foundation for creating a more progressed
instructive bolster program.
II. SOFTWARE DEVELOPMENT LIFE CYCLE.
1. What is Algorithms analysis ?
- In today's society, time is of the quintessence - and computer science is no exemption. We need to prepare expansive sums
of information and we need to form it as fast as conceivable. This can be where calculation investigation shows up. At
whatever point we come up with a modern calculation or utilize an existing calculation, we need to know how rapidly
information can be prepared.

- Algorithm is a procedure or formula to solve a problem, based on conducting a specified sequence of actions. A computer
program can be viewed as a complex algorithm. In mathematics and computer science, an algorithm often means a small
process that solves the problem of recurrence.

- An algorithm must be :
• Definite
• Finite
• Precise and Effective
• Implementation independent

- Algorithms are widely used in all fields of IT (information technology). For example, the search engine algorithm takes the
keyword's search string and the operator as input, searches its related database for relevant web pages, and returns results.

- An encryption algorithm transforms data according to the actions specified to protect it. For example, a secret key algorithm,
such as the US Department of Defense Data Encryption Standard (DES), uses the same key to encrypt and decrypt data. As
long as the algorithm is ophisticated enough, no one lacks a key that can decode the data (Domain, 1999).

- The word algorithm derives from the name of the mathematician, Mohammed ibn-Musa alKhwarizmi, who was part of the
royal court in Baghdad and lived between 780 and 850 (C.V.Raman, 2020).
2. Definition software development life cycle.
- Software development life cycle (SDLC) is a process used by the IT industry to design software, develop and test high-quality
software and repair software. SDLC aims to produce a high quality software that meets or exceeds customer expectations,
completes it on time and estimates costs.

- SDLC stands for Software Development Lifecycle.

- It is also called the software development process.

- SDLC is a cyclic circular diagram identifying the tasks performed at each step of the software development process
Figure 1. Software development life cycle (Slide 10 in Lecture 1)
Figure 2. Step by step in Software development life cycle
Figure 3. Explain step by step (Tutorialspoint, 2020)

2.1 Requirements analysis


- In this step, the prerequisites investigation office will meet and examine with clients as well as clarify the capacities and
prerequisites that clients need to construct in their program. In truth, amid this stage, the computer program unit will have a
common set of questions for the extension as well as particular project-specific questions.

- This is an imperative organize influencing program advancement and advancement within the future, so the vital
investigation group is regularly experienced individuals who offer assistance conversation to clients to clarify and get it the
necessities. As a result, it is fundamental to gather client data, as well as collect, extend related data frame for the following
examination stage .(Tutorialspoint, 2020).
2.2 Design
- In this step, based on the detailed archive, the plan office will plan the common interface, as well as the programming
division, will plan a point by point interface level concurring to each work of the computer program. That's, it'll recognize the
capacities within the portrayal record into the model computer program work interface. At that point utilize this computer
program framework to examine and concur with clients on the interface and layout. When the customer concurs with the
model program plan, it'll move to the following organizations, something else, it will record the comments and rectifications
until the client concurs with the computer program prototype.(Tutorialspoint, 2020).

2.3 Developments
- During this step Program Improvement Life Cycle started to create in hone and the item was built. The programming stage is
the stage to realize the capacities of the computer program after the client has concurred on the model of the computer
program. In this stage, the engineers will program the useful handling, the specified module will be doled out and after that
exchange to the analyzers to test the capacities agreeing to the test case built on extraordinary records depiction.
(Tutorialspoint, 2020).

2.4 Coding and documentation


- Upon receipt of the framework plan report, the work is partitioned into modules/units and the real coding is begun. Since
amid this stage, code is delivered, it could be a major centre for engineers. Typically the longest organize of the program
advancement life cycle.

- And when you're coding, you've got to consolidate clarifications archives right another door, so that clients can get it the
method, since they may not be an individual who knows much almost data innovation. (Tutorialspoint, 2020).

2.5 Testing & Debugging


- In this step, the analyzer will get the work handover from the software engineer. The analyzer will at that point test these
capacities concurring to the built-in test cases. On the off chance that there's a mistake within the test case test, the analyzer
will issue a blunder report so that the software engineer can handle the work to settle the mistake.
- The handle of functional testing, retesting, mistake announcing, and mistake detailing will be performed over and over until
the programming capacities are executed agreeing to the detailed reports or client necessities.

- After completing the capacities as well as assembly the testing necessities, the program will be sent for testing on the
customer's environment. In the event that any alterations are required, the program advancement group will make extra
mistakes and settle them so they can be checked and acknowledged. (Try Q&A, n.d.) (Tutorialspoint, 2020).

2.6 Maintenance
- Once the item is tried and prepared to convey, it is authoritatively discharged on the suitable advertisement. In some cases,
item organizations happen in stages concurring with the organization's trade procedure. Within the handle of utilizing
customers' computer program, the software development company will bolster and handle blunders in case any emerge
amid utilize. There are two concepts to note here:
• Software repair (repair and maintenance): Perform correction of errors arising during the use of software by
customers.
• Software update (maintenance maintenance).

- Complete maintenance: Modify the software according to customer needs.


- Adaptive maintenance: Modify software to adapt to a new environment (Tutorialspoint, 2020).

3. Some popular models of SDLC


- Waterfall model, V-model, Spiral model, Agile model – process Scrum, Big Bang model, Iterative model (Tutorialspoint,
2020).
III. ANALYSIS AND DESIGN
1. Analysis the program and produce corresponding
- Scenario: You have applied for a post as a trainee with a software development company and have been invited for an
interview. You have been asked to demonstrate your problem solvingand basic programming skills. To do this you have to
prepare a report on using algorithms to solve problems. You need to explain, using examples, how algorithms are used to
solve simple business problems and the steps needed to be followed to produce a working program solution. You should
make clear your assumption about your program. The problems to be solved will involve basic procedural programming
instructions - sequence instructions (input, output and assignment statements), loops, conditional statements. Problems
should beanalysed and designed by the use of flowchart and demonstrated by the use of modules (procedures) using a menu
based program.

- Problem: As mentioned at the beginning, I designed a system program to support teaching for teachers, namely the student
input program, and the system that prints student information, At the same time, the students' average score and
classification of good grades are quite different.

- Produce corresponding: The program system will be set up a menu showing the options that the user wants to execute, the
menu is as follows:
• 1. Login the system
• 2. Input information of students (name, ID, grade)
• 3. Display information of students (name, ID, grade, grade average, classification)
• 4. Exit the system
Figure 4. Produce corresponding menu base

2. Data types, data structures


Variable’s name How to declare Data types Explained
choice static int choice; integer I use the "choice" variable to
ask the user to select options.
For example, the user enters
1, the system takes the user to
the login interface, so the data
type of "choice" is integer.
“Choice” variable used
throughout the program so I
will declare it as "static" -
means a global variable. Ex: 1,
2, 3, 4,…
i Int I; integer The variable "i" is used in the
"for" loop. This variable works
to adjust how many times the
loop is repeated. Because I use
2 "for" loops, I will declare the
variable "i" separately in each
function, to avoid having
the "i" variable. So "i" will be a
local variable in every
different function.
name static string name; string The variable "name" is used to
enter and print the name of
the student. Ex: Do Trung Hoa
, Nguyen Thanh Cong … So
data type of “name” is string.
Id static int id; string The variable "id" is used to
enter and print the ID of the
student. Ex: 190106, 190232,
… So data type of “id” is
integer.
math, eng, IT, avg static double math, double All variables for grade are used
eng, IT, avg; to enter and print all grade,
average grade also of the
student. Ex: 9,75 5,5 … Of
course, data type is float.
username, static string string “Username” and “password”
password username, used to enter user name and
password password of user. If user enter
wrong, they should login
again. Ex: dohongquan, …
3. Use case and flowchart
3.1 Use case

Figure 5. Use case diagram about Manage Student System.

Explain:

• This is my use case diagram for Manage Student System.


• It has just one actor – Teacher, because this system for teachers only, students cannot participate in the system.
• Teacher has 4 functions are : login the system, input information, display information and exit the system.
3.2 Flowchart
a) Flowchart for Menu base
Menu:

• 1. Login the system.


• 2. Input information of students.
• 3. Display information of students.
• 4. Exit the system.
- This flowchart shows 1 “do…while”
loop statement.
- I will talk explain more detail in the
next part.

Figure 6. Flowchart for Menu base.


b) . Flowchart for Function 1 ( Login the system )
- This flowchart shows 1 “do…while” loop statement nested with an “if…else” statement.
Figure 7. Flowchart for Function 1.
c) Flowchart for Function 2 ( Input information of students )

Figure 8. Flowchart for Function 2.

- This flowchart shows just one “if…else” selection statement.

d) Flowchart for Function 3 ( Display information of students )


- This flowchart shows 1 “if…else” selection statement.
Figure 9. Flowchart for Function 3.
4. Identify 2 different selections statement.
3.1 Switch case statement
- I use switch case statement for create the menu base, user can choose choice and go to the interface of this choice. I create
the menu by switch case like this :
Operating : when user enter the choice (1-4), the coding in case will run. But user enter the number not in range 1-4, it mean
invalid case, the system will end.

3.2 “if…else” statement


Definition : An if else statement in programming is a conditional statement that runs a different set of statements depending on
whether an expression is true or false.

- In my code, I use 3 different “if…else” statement. Two single “if…else” and one “if…else” nested with “do…while” loop(I will
explain at the same part, because this is nested statement

- Here is two first “if…else” :


- First “if else” (nested with “do…while”) loop: I set the default username is "dotienthanh" and the password is "1618". The
condition in the "if" statement is a true condition, I set the condition in the "if" just like in the image. If we enter the correct
username and password, it will be wrong compared to the condition, the program will run the code in the else body. the "i"
count will be equal to 1. and if the wrong username and password are entered, it will be true if the condition in the if body,
the "i" count will increase by 1 unit. When we log in wrong 3 times, this time the "do ... while" loop will do its part, in "while"
body is a false condition. True, the loop will repeat, and if false, will end the loop and to the next code.

- Second “if…else” is the same meaning. Count “i” will different will condition in if body. Else body is run and notice “login
successful”. If i=3, user must login again.
Figure 10. Way the "if...else" statement work.

Here is last “if…else” :


- It is basic “if…else”, it check the grade, if the grade is true with condition, the program will print the notice in this body of “if”
or “else”.

5. Identify loop statement.


- Definition : If you recall how for and while loops work, you'll remember that these types of loops check the condition of the
loop at the beginning of the loop. Not satisfied, the loop will not be executed. The do while loop checks the condition at the
end of the loop. This means that the statements inside the loop body will be executed at least once even if the condition is
never true.

- In my code, I used 5 “do…while” loop with 3 different goals.

- First, I used for menu base (switch case). The “do…while” will always print Menu first, when you choose valid choice,
program will run continue. If choose invalid choice, program will end.
- Second “do…while” loop I used for check username and password ( I identified in part identify
if…else)

- Three “do…while” loop, I used for check grade, I want grade in range 0-10.
IV. Implementation
1. Code.
- Explain code:
Declare global variables with form ( static + data type + variable’s name ).
===============================================================
I create the menu by switch case, “do…while” loop use for check condition of “choice” and can choose another choice or exit
system.
This is function 1 (login the system)

=========================================================================================
This is function 2 (input information)
This is function 3 (display information)
2. Result

When I enter “F5”, the program will run, here is the menu base.

============================
I choose choice number 1. You should login the system by username and password.

===========================
Username is “dotienthanh” and password is “1618”. But I try enter wrong 3 times.
You must login again.

=================================
Login done.

=================================
Function 2. Input information, when I input grade with -1, -2, -3 I must input again.

=========================
Function 3. It work, it print all information.

================================
Enter choice 4 will exit the system. Good bye !

=====================================
When I try enter choice not in range 1-4, the system notice invalid choice and I must enter again.
V. Conclusion

The above are all the processes to create a teaching support software for teachers. But really this is just the beginning laying the
foundation for educational software development. This program will definitely be edited and upgraded by me to become more
complete. Things that the software lacks:

- Not programmed in the order of the menu, I mean when the menu pops up, you can completely choose choice 2 3 4 before
choosing choice 1 (the step to log into the software).

- There are quite a few features.

- Currently the program can only enter information for each student, in the future I will push more array variables into the
program to be able to enter information for many students at once, saving teachers more time. .

- This idea will not only be completed on C sharp, it will be developed by me using Windows Form on assignment 2.

Finally, I would like to thank the company for giving me a chance to develop this idea, gain more experience for myself. Hopefully
there will be more times to cooperate and work with everyone.

References
C.V.Raman, 2020. famousscientists.. [Online]
Available at: https://www.famousscientists.org/muhammad-ibn-musa-al-khwarizmi/
[Accessed 13 12 2020].

Domain, P., 1999. Federal Information Processing Standards Publication 46-3.. [Online]
Available at: https://www.hsdl.org/?view&did=36563
[Accessed 13 12 2020].
Try Q&A, n., n.d. What are the Software Development Life Cycle (SDLC) phases?. [Online]
Available at: http://tryqa.com/what-are-the-software-development-life-cycle-sdlc-phases/
[Accessed 13 12 2020].

Tutorialspoint, 2020. Tutorialspoint. [Online]


Available at: https://www.tutorialspoint.com/sdlc/sdlc_overview.htm
[Accessed 13 12 2020].

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy