Developer Fresher Software Development Process v1.6
Developer Fresher Software Development Process v1.6
Development
Process
PROJECT METHODOLOGY
04 Agile Scrum
Training Duration
Theory:
2.5h
Self-
study: 2h
Design
Coding
Testing
Deployment
(Installation)
Maintenance
Customer
Engineering Process Support Project Management Process
11
09e-BM/DT/FSOFT - @FPT SOFTWARE - FPT Software Acadademy - Internal Use
Section 2.1
Requirement Process
Objective
Workflow
Work Product
No2.
Get to know that customer’s requirement is understand that customer’s needs and
expectation
No3.
To create SRS – Establish and maintain requirements agreement with the
requestor and affected groups
No4.
To ensure that requirements are met.
No5.
Requirements are documented and controlled to establish a basis for software
development and project management use.
BA DEV (Optional)
▪ Analyze user requirement
▪ Analyze user requirement with BA
▪ Prepare Q&A list to clarify unclear items with customers
▪ Call/interview customers if needed
▪ Develop use cases, system requirement ▪ Develop use cases, system requirement
▪ Develop functional specification ▪ Develop functional specification
Approved SRS
Document
Design Process
Objective
Workflow
Work Product
No2.
Create Architecture design document (ADD), high level design document (HLD)
and detail design document (DDD)
Approved Design
Documents
Coding Process
Objective
Workflow
Work Product
PROJECT RECORD
Coding Work
UNIT TEST REPORT
Product
PRODUCT INTEGRATION PLAN
02
✓ Create Plan
PM Approve
Code analysis scan (CICD tools Summarize and submit result to Team
chain: sonarQube, Blackduck, lean
Coverity) Conduct Unit test
Code modules and Review code (Peer review, Update source code: fix defect for
program units Team lead review) modules and program units
▪ Purpose:
– It is used to find security vulnerabilities and coding error, triage, and prioritize fixes for
existing problems in code.
– Code analysis scan is also to identify potential trouble spots in source code and then manually
audit these spots for security concerns.
– It can help project identify security weaknesses such as code injection, buffer overflow, SQL
injection and more
▪ Toolchains: SonarQ, blackduck, coverity
▪ Steps:
Developer
Developer
• Purpose: Reviewing source code is a process to identify bugs, increase code quality, and
help developers learn the source code
• Participant: developers, team leader, customer/stake holder
• Steps:
Developer
03
✓ Test Report is approved
Developer PTL PM
Testing Process
Objective
Workflow
Work Product
Test Design, Test Viewpoint & review Test Case, Test Procedure Specification,
records Test Scripts, Test Suite & review records
Testing Process
Test Plans & review records Test Results/ Test Report (Test result,
defect list, evidence files
PROJECT METHODOLOGY
✓ Ensures that team is fully functional and ✓ Defines the feature of the products, decide ✓ Ensures that team is fully functional and
productive on release date and content productive
✓ Enables close cooperation across all ✓ Prioritizes features according to market ✓ Enables close cooperation across all
roles and functions and removes barriers value roles and functions and removes barriers
✓ Shields team from external interferences ✓ Can change features and priority very sprint ✓ Shields team from external interferences
✓ Clarifies the purpose of scrum so that ✓ Accepts or reject work result ✓ Clarifies the purpose of scrum so that
everyone understands why they work everyone understands why they work
this way this way
1. Did?
2. Doing?
3. DamN?
2. Dự án B là một development project, trong phase coding, dự án thực hiện scan code bằng tool SonarQube. Tuy nhiên sau quá
trình scan thì tool ghi nhận có nhiều bug (critical, blocker). Là developer, hãy liệt kê những nguyên nhân có thể gây ra việc
scan ra nhiều bug và đề xuất giải pháp.
3. Dự án C là dự án phát triển phần mềm, tuy nhiên trong quá trình làm việc, vì dự án cần phải bàn giao sản phẩm sớm hơn dự
định theo yêu cầu của khách hàng nên bỏ qua quá trình review code, UT để bàn giao đúng thời hạn. Sau khi bàn giao, khách
hàng có nhiều comment về chất lượng code của dự án. Với vai trò của team lead, thì bạn cần làm gì để giải quyết tình huống
này.
4. Bạn được tham gia vào dự án phát triển phần mềm với vai trò technical leader, giả sử thành viên trong dev team bị hư hay thất
lạc máy tính trong quá trình thực hiện dự án, bạn đưa phương án xử lý cho tình huống này.
2. Project B is a development project, in the coding phase, the project scans the code using the SonarQube tool. However, after
the scanning process, the tool recorded many bugs (critical, blocker). As a developer, list the possible causes of scanning for
many bugs and suggest solutions.
3. Project C is a software development project, while implementing, the project needs to release the product earlier than planned
according to the customer's request so that team skip the code review and unit test process. After releasing, customers have
many comments about the code quality of the project. As a team lead, what do you need to do to resolve this situation?
4. You are involved in a software development project as a technical leader, if a member of the dev team breaks or loses a
computer during project implementation, you provide a solution for this situation.