[Information processing engineer writing] Software development
· Tech· CS
Certification
Application testing
static test
- Test that analyzes specifications or source code without executing the program
- ? You can find abnormal patterns by analyzing data flow or logic flow.
- ? You can use not only hardware but also software.
- Walkthrough, inspection, code coverage
dynamic test
- Testing by executing a program to find errors, performing testing at all stages of software development
- Black box testing, white box testing
white box test
Data flow inspection, loop inspection
- To understand white box testing, you can use a logic-flow diagram.
- It corresponds to dynamic testing that finds errors by executing the actual program using test data.
- Set verification criteria (Test Coverage) to select test data.
Verification and confirmation
- Distinguishing between verification and verification in software testing helps clarify the types of defects you are looking for.
Verification
- ? Verification from the developer’s perspective that the function is performed properly and that it meets the specifications.
- Testing the software development process
- It is a task to measure how well the work product complies with the functional and non-functional requirements of the requirements specification.
Check
- Check from the user's perspective whether the developed software satisfies the requirements
- software testing results
software modularization
- Minimize the ripple effect of errors
- Modules can be reused, making development and maintenance easy.
- Efficient management of programs is possible
Software Project Management
- Develop a system that satisfies users at minimal cost within a given period of time
ISO/IEC 25000
- It is a software quality evaluation integrated model standard for software quality evaluation.
- It is also called System and Software Quality Requirements and Evaluation, abbreviated as SQuaRE.
- ? In ISO/IEC 2501n, the quality model field describes a detailed quality model for the quality of use and data of systems and software products.
- The existing software quality evaluation model and software evaluation procedure models ISO/IEC 9126 and ISO/IEC 14598 were integrated.
Formal Technology Review (FTR)
- ? Limit the agenda.
- ? Limit debate and rebuttal.
- Clearly express the problem area.
- ? Limit the number of participants.
Migration
- One of the main activities of software reengineering is converting existing software systems so that they can be used in a new technology or hardware environment.
code inspection
- Instead of executing the program, you can read it and check it with your own eyes.
- It is one of the code quality improvement techniques.
tree structure
binary search tree
- ? If it becomes a musk tree, it becomes a bad tree structure. (one line)
- The AVL tree prevents it from becoming a musk tree.
binary tree operation method
- Potential: Root - Left - Right
- ? Lieutenant: Left - Root - Right
- Postfix: Left - Right - Root
Depth-first search (DFS)
integration test
It tests the interface and combination of the modules that make up the system.
Bottom-up integrated testing
Top-down integrated testing
- You can select modules to test using a breadth first method.
- When trying to determine whether the interface between modules and the system are operating normally
Testing according to the development stage
Unit testing, integration testing, system testing, acceptance testing
unit test
- After completing the development of each module in the implementation stage, the developer tests whether it has been implemented accurately according to the specifications.
- Some modules call the module to be tested, and some modules are called by the module to be tested.
- We mainly carry out structural tests that allow us to see the structure inside the module in detail.
- ? Test tools: JUnit, NUnit, JMockit, EMMA, PHPUnit, CppUnit, IgpUnit
system test
- This is a test that checks whether the developed software performs perfectly on the relevant computer system.
test harness component
test driver
- Top module, bottom-up testing
- ? A virtual module that passes necessary data through arguments and receives the results after test completion.
- ? A virtual module that calls the submodule under test and passes parameters, which is required for bottom-up testing.
- This is simple software that calls the module under test.
test stub
- submodule
- A tool that simply performs the functions of other modules called by the control module, and is a test module that has only temporarily necessary conditions.
- When the module to be tested is called, it executes with the values received as arguments and then passes the results to the module to be tested.
test suite
- set of test units
test script
- Specification of automated test execution procedures
test case
- Specification of test items made up of input values, execution conditions, expected results, etc. to ensure exact compliance with user requirements
neck object
- If the user's actions are conditionally entered in advance, an object that performs the scheduled actions appropriate for the situation.
Requirements Verification Method
Peer Review
Walkthrough
- Short defects discovered after preliminary review by distributing requirements specifications prior to review meeting
- Use cases can be expanded and specified or applied to design diagrams, source code, test cases, etc.
- It is useful when trying to understand complex algorithms or functions or operations such as repetition, real-time operation, or parallel processing.
- This involves manually executing the product using simple test cases.
Inspection
- ? Review experts other than the requirements specification writer find defects while checking the requirements specification.
Inspection process
- Planning - Overview - Preparation - Inspection Meeting - Re-Work - Follow-up
configuration management
- Refers to a series of activities developed to manage software changes during the software development process.
RCS(Revision Control System)
- A software version control tool that allows you to combine development results from different directions and track changes while preventing source modifications at the same time.
test case
- ? 테스트의 목표 및 테스트 방법을 결정하고 나서 테스트 케이스를 작성해야 한다.
- Even if there is a defect in the program, it can produce normal results for the input, so it is important to find a test case that can inspect the defect.
- It can be viewed as a set of input values, execution conditions, and expected results to ensure that the developed service complies with defined requirements.
Test Oracle
- Criteria for determining whether test case execution passed or failed
test case automatic generation tool
Input domain analysis, random testing. data flow chart
- ? Stubs and drivers are test modules, not auto-generation tools.
DRM(Digital Rights Management)
- It refers to an access control technology that hardware manufacturers, copyright holders, publishers, etc. can use to restrict the use of digital content and devices.
- It can also be seen as a technology that manages the usage rights management, charging, and distribution stages that occur during the life cycle of digital media.
Clearing House
- It refers to a system that issues content licenses and grants permission to users.
algorithm
linear search
- The data does not need to be sorted before performing the search.
bubble search
- Find results for PASS 1
Postorder traversal of the Tree structure
- A traversal method that ensures that the last one becomes the lead
- ? This method goes from the left child node through the right child node to the parent node.
Quick Sort
- ? Sort is an algorithm based on divide and conquer that uses a pivot and requires n(n-1)/2 comparisons in the worst case.
clean code
- Abstraction: Briefly represent the characteristics of the application through the parent class/method/function, and the child content is implemented in the parent class/method/function.
- Dependencies: ? Written to minimize impact on other modules
- Readability: Write code that is easy for anyone to read
- Redundancy: Write code to minimize duplication
data structure
cue
- FIFO
- Nodes are inserted from the rear of the ordered list, and nodes are removed from the front.
stack
- ? It is a data structure that allows both insertion and deletion at both ends of a linear list.
- Data entered later comes out first.
- It is applied to interrupt processing, subroutine call work, etc.
- ?? Data output order when performing calculations
If Top=0 Then
Underflow
Else {
remove S(Top)
Top=Top-1
}
- Underflow: When there is no data in the stack storage space and you try to retrieve data.
software packaging
- ? Packaging of developed product software in a form for delivery to customers
- Identify new and changed development sources, modularize them, and package them into commercial products.
Other terminology
Alien Code
- A program that is very old or has no reference documentation or developers, making maintenance work very difficult.
Risk Analysis
- It is an activity to recognize risk factors inherent in a project, analyze their impact, and manage them. It includes all technologies and activities to predict and prepare for risk factors in advance to make the project successful.
Critical Path Method
- It is a skill that allows you to identify the work needed to complete a project. In project management, a critical path is a series of activities with the longest path and must be completed within a deadline to complete the entire project.
Fault
- ? When performing software development activities, the system causes a failure and occurs when an error occurs.
Portability
- One of the software quality goals is the ability of a system to be easily modified to operate in one or more hardware environments.
NS(Nassi-Schneiderman) Chart
- Module specification replacement
- It is an expression method using shapes that focuses on logic techniques.
- It is easy to understand and easy to convert code.
- ? GOTO structure is difficult - arbitrary control movement is difficult
- Expresses control logic structures such as continuation, selection, and repetition.
Data format used for communication between interfaces
JSON, XML, YAML
- YAML: Data serialization language and data representation format (config.yml) used to write configuration files.
Comments
No comments yet. Be the first!
164 posts in 테크
- 2233D Gaussian Splatting vs Unreal Engine: Two Ways to Build a 3D World — and Where Each One Ships
- 222LLMs Inside Unreal Engine: The New Skills Game Developers Need in 2026
- 220Living With Claude Fable 5: How the Most Capable Model Changes the Way You Actually Work
- 219Luma's Bet: From Video Generator to a Single Model That Thinks in Pixels
- 215The Best AI Video Models in 2026: Types, Differences, and Where This Is All Going
1–5 / 164