Nguyễn Hoàng Anh - D12CNPM1- 1781310005

prototype - mẫu thử

A prototype is early version built for a system that the features which are of interes

Prototyping is a process model that offter a solution to the problem of ensuring thet the customer gets what they want

Trưởng nhóm sẽ quyết định bao nhiêu lập trình viên sẽ được tham gia vào dự án

Verification - xác minh

Verification is the general term for techniques that aim to produce fault-free software

click to edit

testing - kiểm thử

black - while box

Testing is one set of techniques for verifying software


Thỉnh thoảng khách hàng thay đổi môt vài yêu cầu

Chất lượng phần mềm được nâng cao nhờ nhiều lỗi được loại bỏ

Deadline - kỳ hạn cuối

Meeting deadline is improved because project is managed well

For effective management, we must establish deadline for the next stage of the project

Process model - Mô hình tiến trình

Water Fall and Spiral

Spiral model shows progress as a line that spirais out from near the centre of the diagram

...Design, Maintenance

In a waterfall model, the correctness of each step is checked

Top down - Từ trên xuống

Top-down is an approach to incremental implementation of software

risk while developing software - rủi ro khi phát triển phần mềm

The software occupies too much main memory

Tạo mẫu thử là một mô hình quy trình nhằm giải quyết vấn đề đảm bảo khách hàng có được thứ họ muốn


Một nguyên mẫu là phiên bản đầu tiên được xây dựng cho một hệ thống có các tính năng đáng chú ý

The team leader will decide how many developers will be involved in this project

Xác minh là thuật ngữ chung cho các kỹ thuật nhằm tạo ra phần mềm không có lỗi

Kiểm tra là một tập hợp các kỹ thuật để xác minh phần mềm

The quality of the software is improved thanks to many errors that are eliminated


Sometimes customers change some requirements

Việc đáp ứng kỳ hạn công việc được cải thiện vì quản lý dự án tốt

S: Meeting deadline, project - V: is improved, is managed - cấu kép


Để quản lý hiệu quả, chúng tôi phải thiết lập thời hạn cho giai đoạn tiếp theo của dự án


Top-down là cách tiếp cận để triển khai phần mềm

Phần mềm chiếm quá nhiều bộ nhớ chính

S: The software - V: occupies

The interface that the user sees when they use the computer is the single, paramount aspect of the system.

S: verificatiion - V: aim to produce - câu đơn

Black box: the black box approach to testing is to devise sample data that is representative of all possible data. This type of testing is termed black box testing because no knowledge of the workings of the program is used as part of the testing – we only consider inputs and outputs. The program is thought of as being enclosed within a black box.

White box: This form of testing makes use of knowledge of how the program works – the structure of the program – as the basis for devising test data. In white box testing every statement in the program is executed at some time during the testing. This is equivalent to ensuring that every path (every sequence of instructions) through the program is executed at some time during testing

S: Top-down - V: is - câu đơn

S: we - V: establish - câu đơn

Maintenance: The technical meaning of maintenance involves functional checks, servicing, repairing or replacing of necessary devices, equipment, machinery, building infrastructure, and supporting utilities in industrial, business, governmental, and residential installations

Mô hình xoắn ốc cho thấy tiến trình như một đường xoắn ốc từ vùng gần trung tâm của sơ đồ

S: Spiral model - V: shows - câu đơn

Trong một mô hình thác nước, tính chính xác của từng bước
được kiểm tra

S: the correctness of each step - V: is checked - câu đơn

S: A prototype - V : is - câu phức

S: Prototyping - V : is - câu phức

S: Testing - V: is - câu đơn

P2 - Design

Database

Designing

Database sever (Web sever, Application server?

Process model

Water Fall and Spiral

Waterfall Model

Spiral Model

GUI, WWW

UML

Use Case

Modularity

Structure of software

Why modularity?

Software can be designed?

by a method

function decomposition

object-oriented design

data structure design

"As its name suggests, functional decomposition focuses on the functions, or actions, that the soft out"

Object-oriented programming (OOP) Object-oriented design

Class + Object

principles of OOP

"The advantage of OOP is to promote, the reusability of software components"

encapsulation, inheritance and polymorphism

Data flow design

P1 - Software

System Software

How to delete a file?

Operating system (OS)

Application Software

Android applications? language?

Microsoft Office Software?

information system

Activity of software development

Meeting user's needs

Requirements analysis

Project management, design

Programming, testing, coding ...

Validation

goals of software development

Cost of software is determined

problems in software development

Specification is a list of requirements that describe v wants

Meeting deadines

GUIs

Most software has a graphical user interface

which must be carefully designed so that it is easy to use

www

World Wide Web: combination of all resources and users on the Internet that are using the Hypertext Transfer Protocol (HTTP)

Designing the database is a whole subject in its own right and is not normally considered to be part of software engineering

Database sever: If a computer provides database services to other, then it will be known as a Database server

high level programming language: Java

"In a waterfall model, the correctness of each step is checked"-Trong một mô hình thác nước, tính chính xác của từng bước được kiểm tra

Desgin

It divides a complex task into smaller, more manageable tasks

each task produces a well-defined deliverable

each stage is carried out in sequence - there is no going back

The goal of this approach is to maintain control during development

The spiral model consists of a series of cycles. Each cycle
consists of a series of steps. At every cycle, any risks to the
successful progress of the project are assessed. Then an
appropriate method is selected in order to minimize that risk

The spiral model consists of a repeated cycle of small steps designed to assess and deal with risks at every cycle. Thus the spiral model is termed an iterative approach

Use cases are descriptions of requirements that can be
augmented by UML use case diagrams

Software can be designed by a method, such as functional
decomposition, object-oriented design or data structure design.

Modularity is to do with the structure of software

to construct software from pieces that are as independent of
each other as possible

Như tên gọi của nó phân rã chức năng là một phương pháp tập trung vào các chức năng, hoặc các hành động, mà phần mềm phải thực hiện

Data flow design is a method for carrying out the architectural
design of software

One of the principles used in the design of object-oriented software is to simulate real world situations as objects. You build a software model of things in the real world

One of the main benefits of OOP is reuse of software
components

Class

A class is a template or blueprint for any number of objects that can be created from it

class consists of a grouping of variable declarations, at the top, followed by methods

Object

In object oriented programming, data and actions that are
strongly related are grouped together into entities called objects

encapsulation

allows a class to be reused without knowing how it works – thus
modularity and abstraction are provided

inheritance

allows a class to be reused by using some of the existing
facilities, while adding new facilities in a secure manne

polymorphism

promotes encapsulation by allowing general purpose classes to be written that will work successfully with many different types of object

a method for carrying out the architectural (large-scale)
design of software

depends on identifying the flows of data through the intended software, together with the transformations on the flows of data

Component

a collection of lines of code

self-contained

called from some other components

P3 - Programming, languages

Robust software is software is software that tolerates faults

class diagram

high-level programming language

Java, Cobol, Visual Basic or C#

Algorithm

syntax

Bug

Statement/Java statements?

imprort week, Firday; import week;

statement: create an object Friday fri = new Friday();

data type

Division by zero

floating point overflow

if/else/condition for/while/ break staement

public method/private method private varlable/public variable

Class

to prevent errors

superclass/subclasses

packages

to prevent errors? make good design

Dịch

"Errors can be detected by a compiler"

"Faults can be prevented and detected during software development"

The C and C++ languages have a rule that a method has to be declared before it can be used

"java lang contains the classes that support the main features of the language like Object, String, number, exception and threads."

A header file is a source code file that contains the deciaration of the methods to be found within a package

If the import statement was omitted, we can not use the class JButton.

import java.awt.; (in Java) - Using means that we want to import all the classes within the named package.

Java is a language that provides single inheritance

"Những chương trình lớn phải được phát triển bởi đội ngũ lập trình viền"

"Một phương thức có thể chứa các câu lệnh và khai báo các biến"

Kiểm thử viên là người được yêu cầu kiểm thử chương trình

Algorithm

A programming language is used to write software

Programming language: Java,C, Cobol, Esclipse

Robust software is software that tolerates faults.

is said to be problem-oriented and to reduce software production and maintenance costs

Typically the classes are described in a graphical
notation, called a class diagram

In OOP, “Classes Square and Rectangle are
subclasses of superclass Shape

It is often convenient to group the classes of a large program into packages. Each package is given a name

Classes within a package can be used by giving the full name of the package and class

Lỗi có thể được phát hiện bởi trình biên dịch

Lỗi có thể được ngăn chặn và phát hiện trong quá trình phát triển phần mềm

Ngôn ngữ C và C ++ có một quy tắc rằng một phương thức phải được khai báo trước khi nó có thể được sử dụng

java.lang chứa các lớp hỗ trợ các tính năng chính của ngôn ngữ như đối tượng, chuỗi số, ngoại lệ và các luồng

Tệp tiêu đềlà một tệp mã nguồn mà chưa khai báo của cácphương thức tìm thấy trong một gói

Nếu câu lệnh nhập bị bỏ qua, chúng ta không thể sử dụng lớp JButton

import java.awt: (trong java) - Nghĩa là chúng ta muốn nhập tất cả các lớp trong gói được đặt tên

Java là ngôn ngữ cung cấp tính đơn kế thừa

Large-scale programs must be developed by a team of programmers

A method can contain statements and declare variables

Tester is a person who is required to test the program