1. Trang chủ
  2. » Luận Văn - Báo Cáo

Quản lý cấu hình phần mềm

105 1,5K 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 105
Dung lượng 4,1 MB

Nội dung

Quản lý cấu hình phần mềm

Trang 3

Giới thiệu

Các khái niệm

Các phương pháp quản lý cấu hình

Định nghĩa

Trang 4

Định nghĩa

• Thiết lập và bảo đảm tính toàn vẹn của các sản phẩm trung gian cũng như các sản phẩm sau cùng của một dự

án phần mềm, xuyên suốt chu kỳ sống của dự án đó.

• Tổ chức, quản lý các thay đổi đối với phần mềm đang được xây dựng bởi một nhóm lập trình viên.

Trang 5

Các khái niệm

Delivery:

Tập hợp các mẩu cấu hình được bàn giao cho khách hàng hoặc những bộ phận khác (developer, teser…)

Baseline / Milestone:

Mốc thời gian mà tại đó đạt được những kết quả nhất định Vd:

Duyệt đặc tả yêu cầu

Software Configuration Item:

Đối tượng được quản lý bởi QLCH

Phát hành bản beta

Trang 6

Các khái niệm (tt)

Repository:

Nơi chứa tất cả các tài nguyên (tập tin) được quản lý.

Working copy:

Bản sao (dùng để làm việc) của tập

j Working copy

Trang 8

Các khái niệm (tt)

Check out (update):

Tạo bản copy từ repository về workspace để chỉnh sửa.

Trang 9

Các khái niệm (tt)

Check in (commit):

Đưa thay đổi của tài liệu từ workspace lên repository.

Trang 10

Các khái niệm (tt)

Diff (change, delta):

Sự khác nhau giữa 2 phiên bản kề nhau.

Trang 11

Các khái niệm (tt)

Merge:

Kết hợp thay đổi trên các working copy khác nhau của cùng 1 file,

tạo thành 1 bản duy nhất.

Trang 12

Các khái niệm (tt)

Conflict:

Sự đụng độ xảy ra khi nhiều người cùng chỉnh sửa

1 tài liệu.

Trang 13

“Mở khoá” tài liệu sau khi làm việc xong.

 Lock – Modify - Unlock

Trang 14

Các khái niệm (tt)

 Copy – Modify - Merge

Trang 15

Các khái niệm (tt)

 Copy – Modify - Merge

Conflict

Trang 16

Các khái niệm (tt)

 Copy – Modify - Merge

Trang 17

Các phương pháp quản lý cấu hình PM

Trang 18

Local only

• Phạm vi hẹp.

• Dự án nhỏ.

• Dễ triển khai.

Trang 19

Local only

Trang 20

Client – server

• Quy mô rộng.

• Dự án lớn.

• Chi phí cao.

Trang 21

Client – server

Bảo đảm đường

truyền???

Trang 22

• Một thùng chứa chính.

• Mỗi cá nhân có một thùng chứa riêng.

• Giao thức peer – to – peer.

Trang 23

peer – to – peer

Trang 24

Patch

Trang 26

Team Foundation Server

TFS

Trang 27

Nội dung thuyết trình

Trang 28

Giới thiệu

• TFS là hệ thống quản lý vòng đời phần mềm:

• Lưu trữ, chia xẻ mã nguồn, tích hợp với công cụ

lập dự án Microsoft Project hoặc Excel.

• Hướng dẫn quy trình, tạo báo cáo động và theo

dõi đầu công viêc và tiến độ chung của dự án.

• Chuyên dùng cho các dự án phát triển phần mềm, đòi hỏi khắt khe chất lượng, tiến độ, ngân sách

Trang 29

Chuẩn CMMi && Agile

• CMMi - Capability Maturity Model®

Trang 30

Kiến trúc

Trang 31

• Team Project Portal

• kết hợp dữ liệu và tạo báo cáo.

Application

•cung cấp dịch vụ lưu trữ dữ liệu cho thùng

chứa tài liệu.

• SQL Server + Window Server 2003

Data

Trang 34

Giảng viên hướng dẫn: Thầy Lâm Quang Vũ

Nhóm thực hiện: C6 – Haughty Guys

Trang 36

Giới thiệu

• Subversion(SVN) là một hệ thống quản lý version (version control system - VCS)

được giới thiệu vào năm 2000 bởi công ty CollabNet (http://subversion.tigris.org).

• Về mặt khái quát, SVN giống như một hệ thống file server mà các client có thể quản

lý và thay đổi cùng một tập hợp dữ liệu

Trang 37

Tính năng

• Directories are versioned

• Copying, deleting, and renaming are versioned

• Free-form versioned metadata ("properties")

Trang 38

Kiến trúc

Trang 40

Kiến trúc

• Cách thức quản lý phiên bản

Trang 41

Cài đặt

• Môi trường cài đặt: Microsoft Windows

(Windows XP SP2, Windows Server 2003, Standard Edition)

• CollabNet Subversion Server and Client

v1.6.1 (for Windows):

http://www.open.collab.net/downloads/sub version

• Tortoise SVN (GNU General Public

License): http://tortoisesvn.net/downloads

Trang 42

Demo

Trang 43

Tham khảo

• http://subversion.tigris.org

• http://svnbook.red-bean.com/

Trang 44

Các giải pháp quản lý cấu hình

miễn phí trên mạng

Trang 46

Giới Thiệu

 Biện pháp quản lý cấu hình trên mạng là gì?

 Website cung cấp dịch vụ project-hosting

Trang 48

Giới thiệu

1

Trang 50

Tạo project mới

URL: http://code.google.com/hosting /

Trang 51

Tạo project mới

Trang 52

Thành phần

Project Home: giới thiệu về dự án, các cập nhật gần đây

Downloads: nơi public các tài nguyên, source code, sản phẩm

cuối (2Gb)

Wiki: 1 trang wikimedia thu nhỏ

Issues: hệ thống quản lý các bug

Trang 53

Source

- Dung lượng: 1Gb

- Sử dụng kèm với tool ở client: TortoiseSVN, …

- Cần có tài khoản và mật khẩu

Trang 54

Source

Trang 55

Thêm thành viên

Trang 56

Tổng kết

 Ưu điểm

 Miễn phí hoàn toàn

 Dung lượng lưu trữ cao

 Dễ sử dụng

 Dễ đăng ký

 Thuận tiện phát triển các dự án vừa và nhỏ

 Nhược điểm

Trang 57

Giới thiệu

1

Assembla

3

Trang 58

Tổng quan

 Do nhóm của Andy Singleton phát triển

 Cung cấp dịch vụ project-hosting

 Miễn phí: public and open source projects

 Thu phí: private and professional projects

 Các add-on tools miễn phí 100%

Trang 59

Tạo workspace

URL : http://www.assembla.com

B1: đăng ký tài khoản

B2: vào start page

B3: Chọn create new space

B4: Chọn mẫu workspace

B5: Chọn plan

B6: Tùy biến workspace

Trang 60

Tùy biến workspace

 Chức năng cần thiết

Team: thêm, xóa, phân quyền cho thành viên

Admin: tùy biến workspace, backup, upgrade…

 Chức năng tùy chọn: 24 chức năng

Source/SVN Wiki Scrum

Trang 61

Source/SVN

Xài kèm TortoiseSVN

Trang 63

Featured Space Configurations

Định nghĩa: Là những mẫu workspace có sẵn

Tổng số mẫu workspace: 12

 Subversion Hosting with Integrated Tickets: thông dụng nhất

 Trac and Subversion Hosting

Trang 64

Tổng kết

 Ưu điểm

 Miễn phí

 Dễ sử dụng

 Khả năng tùy biến cao

 Cho phép sử dụng các host bên ngoài kết hợp với assembla

 Có nhiều mẫu workspace

 Không giới hạn số workspace

Trang 68

I Continuous Integration

II CruiseControl.NET

III CruiseControl.NET Integration Process

IV Tools - Configuration Example

Trang 69

I Continuous Integration

II CruiseControl.NET

III CruiseControl.NET Integration Process

IV Tools - Configuration Example

V Demo

VI Advantages and Disadvantages

Trang 70

Continuous integration is the strategy of making sure that changes to the project’s code base are built, tested and

reported on as soon as possible after they are introduced.

Trang 71

Traditionally, different modules are developed by

different programmers

 Divide work to allow parallel development

 Integrate modules at late state of project

 Integration problems can easily knock project off schedule… or cause it to fail altogether

Parallel commits can cause semantic

incompatibilities

 The earlier you can detect problems, the easier it

is to resolve them

Trang 72

 Shorten the feedback loop

 Automatic compilation

 Automatic testing

 Improve reporting

Trang 73

Solution: continually integrate and test

throughout the project

Trang 74

Developers check out code into their private

workspaces

Trang 75

When done, they commit changes to the

repository

Trang 76

The CI server monitors the repository and checks

out changes when they occur

Trang 77

The CI server builds the system and runs unit and

integration tests

Trang 78

The CI server releases deployable artefacts for

QA testing

Trang 79

The CI server assigns a build label to the version

of the code that it just built

Trang 80

The CI server informs the team of the successful

build and generates useful metrics

Trang 81

If the build or tests fail, the CI server alerts the

team

Trang 82

Continually integrate and test throughout the

project

Trang 83

I Continuous Integration

II CruiseControl.NET

III CruiseControl.NET Integration Process

IV Tools - Configuration Example

V Demo

VI Advantages and Disadvantages

Trang 84

 CruiseControl.NET (CCNet) consists of a suite of applications, but at its core is the CruiseControl.NET Server which is an automated integration server

 The Server automates the integration process by monitoring the team's source control repository directly Every time a developer commits a new set of modifications, the server

will automatically launch an integration build to validate the changes When the build is complete, the server notifies the developer whether the changes that they committed

Trang 85

• The CCNet Server offers several key features:

 Integration with a variety of Source Control systems

 Integration with other external tools, such as NAnt and Visual Studio

 Can build multiple projects on one server

 Remote management and reporting

Trang 86

I Continuous Integration

II CruiseControl.NET

III CruiseControl.NET Integration Process

IV Tools - Configuration Example

Trang 90

I Continuous Integration

II CruiseControl.NET

III CruiseControl.NET Integration Process

IV Tools - Configuration Example

Trang 91

• Source Control:

– CVS Source Control

– Perforce Source Control

– Visual Source Safe Source Control

• Build tools

– MsBuild

– NAnt

– Visual Studio

Trang 92

• Để cấu hình cho CC.Net ta tiến hành theo các bước:

 Open file ccnet.Config trong thư mục:

C:\Program Files\CruiseControl.NET\server

Trang 94

The project in the repository to be monitored.VSS user ID that CCNet should use to authenticate If the username is unspecified, the VSS client will attempt to authenticate

using the NT user

VSS user ID that CCNet should use to authenticate If the username is unspecified, the VSS client will attempt to authenticate

using the NT user

Password for the VSS user IDThe directory containing SRCSAFE.INI If this SSDIR environment variable is already set then this property may be omitted

The directory containing SRCSAFE.INI If this SSDIR environment variable is already set then this property may be omitted

Specifies whether the current CCNet label should be applied to all source files under the current project in VSS Note: the specified

Specifies whether the current CCNet label should be applied to all source files under the current project in VSS Note: the specified Specifies whether the current version of the Specifies whether the current version of the

Controls whether or not VSS gets a clean copy (overwrites modified files) when getting

the latest source

Controls whether or not VSS gets a clean copy (overwrites modified files) when getting

the latest source

Trang 97

The location of the MSBuild.exe executable.The directory to run MSBuild in - this is generally the directory containing your build

project

The directory to run MSBuild in - this is generally the directory containing your build

project

The name of the build project to run

Any extra arguments to pass through to

The full path to the assembly containing the

custom logger to use

The full path to the assembly containing the

custom logger to use

Trang 98

BUILD – VISUAL STUDIO

Trang 99

BUILD - NANT

Trang 100

I Continuous Integration

II CruiseControl.NET

III CruiseControl.NET Integration Process

IV Tools - Configuration Example

Trang 101

I Continuous Integration

II CruiseControl.NET

III CruiseControl.NET Integration Process

IV Tools - Configuration Example

V Demo

VI Advantages and Disadvantages

Trang 102

– You catch build breaks early on

– In a distributed development environment where developers do not always communicate with one another, continuous integration is a great way to assure the developer that the build he or she is

building is the latest one.

– Continuous integration also causes less regression – The feedback loop is smaller.

Trang 103

– A developer does not have to wait for the end of the day or week to find out how the check-in

affected the build

– Integration testing moves up in the chain

– Every check-in goes through the integration

testing where problems are caught early.

– Continuous integration enforces better

development processes.

– Each developer is held accountable.

– You always have a latest-and-greatest build to use in demos, showcases, etc

Trang 104

– Maintenance overhead often increases

– Some teams find that the level of discipline required for continuous integration causes bottlenecks This often requires a shift in the developer mindset

– The immediate impact of a check-in often

causes a backup because programmers

cannot check in partially completed code

Trang 105

Thank You!

Ngày đăng: 21/08/2016, 18:28

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w