Your SlideShare is downloading. ×
0
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Quan ly cau hinh pm
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Quan ly cau hinh pm

1,321

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,321
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
108
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Seminar QUẢN LÝ CẤU HÌNH PHẦN MỀM GVHD: Thầy Lâm Quang Vũ Nhóm thực hiện: Nhóm C 04/12/11
  • 2. Nội dung làm việc
    • Lý thuyết.
    • Demo giới thiệu tools
    04/12/11
  • 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 04/12/11
  • 4. Định nghĩa
    • T hiế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 .
    04/12/11
  • 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 04/12/11
  • 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 tin trên repository. 04/12/11 j Working copy
  • 7. Các khái niệm (tt) Revision Mỗi thay đổi liên quan đến một tập tin nào đó sẽ tạo ra một revision mới. r20 r21 + delta 04/12/11
  • 8. Các khái niệm (tt) Check out (update): Tạo bản copy từ repository về workspace để chỉnh sửa. 04/12/11
  • 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. 04/12/11
  • 10. Các khái niệm (tt) Diff (change, delta): Sự khác nhau giữa 2 phiên bản kề nhau. 04/12/11
  • 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. 04/12/11
  • 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. 04/12/11
  • 13. Các khái niệm (tt) Lock: “ Khoá” tài liệu đang làm việc trên repository để ngăn người khác chỉnh sửa. Unlock: “ Mở khoá” tài liệu sau khi làm việc xong.
    • Lock – Modify - Unlock
    04/12/11
  • 14. Các khái niệm (tt)
    • Copy – Modify - Merge
    X Y 04/12/11
  • 15. Các khái niệm (tt)
    • Copy – Modify - Merge
    Conflict X Y 04/12/11
  • 16. Các khái niệm (tt)
    • Copy – Modify - Merge
    Merge X Y 04/12/11
  • 17. Các phương pháp quản lý cấu hình PM
    • Thùng chứa tập trung
      • Local only
      • Client – server
    • Thùng chứa phân tán (Distributed)
    04/12/11
  • 18. Local only
    • Phạm vi hẹp.
    • Dự án nhỏ.
    • Dễ triển khai.
    04/12/11
  • 19. Local only Your Text Here Your Text Here Your Tex Here 04/12/11
  • 20. Client – server
    • Quy mô rộng.
    • Dự án lớn.
    • Chi phí cao.
    04/12/11
  • 21. Client – server Bảo đảm đường truyền??? 04/12/11
  • 22. Distributed
    • 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.
    04/12/11
  • 23. Distributed peer – to – peer 04/12/11
  • 24. Distributed Patch 04/12/11
  • 25. Demo Tools QLCH
    • Team Foundation Server 2008
    • SVN
    • Quản lý cấu hình miễn phí web hosting services.
    • Tích hợp liên tục
    04/12/11
  • 26. Team Foundation Server TFS 04/12/11
  • 27. Nội dung thuyết trình
    • Giới thiệu:
      • Chuẩn CMMi và Agile.
    • Kiến trúc.
    • Các khái niệm.
    • Demo.
    04/12/11
  • 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.
    04/12/11
  • 29. Chuẩn CMMi && Agile
    • CMMi - Capability Maturity Model® Integration:
      • Đòi hỏi rất nhiều loại văn bản khác nhau, luôn yêu cầu lập kế hoạch dự án, đào tạo, giám sát liên tục .
    • Agile :
      • Yêu cầu vòng đời phiên bản thật ngắn tính bằng tuần .
    04/12/11
  • 30. Kiến trúc 04/12/11
  • 31. Kiến trúc
    • Tạo và quản lý dự án
    • chỉ có các web service.
    • Quản lý ứng dụng.
    Client
    • web services .
    • 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 04/12/11
  • 32. Các khái niệm
    • WorkItems:
    • Team Building.
    • Bug.
    • Report
    04/12/11
  • 33. Demo
    • Connect 2TFS.
    • Create new Team Project.
    • Add project to TFS.
    • Convert VSS to TFS
    04/12/11
  • 34. Giảng viên hướng dẫn: Thầy Lâm Quang Vũ Nhóm thực hiện: C6 – Haughty Guys 04/12/11
  • 35. Nội dung:
    • Giới thiệu
    • Tính năng
    • Kiến trúc
    • Cài đặt
    • Demo
    04/12/11
  • 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. Điểm đặc biệt của SVN là nó lưu lại tất cả những gì thay đổi trên hệ thống file.
    04/12/11
  • 37. Tính năng
    • Directories are versioned
    • Copying, deleting, and renaming are versioned
    • Free-form versioned metadata ("properties")
    • Atomic commits
    • Branching and tagging are cheap (constant time) operations
    • Merge tracking
    • File locking
    04/12/11
  • 38. Kiến trúc 04/12/11
  • 39. Kiến trúc
    • Subversion dựa trên mô hình quản lý tập trung kiểu client/server.
    • Hai khái niệm cơ bản: Repository và Working Copies
    04/12/11
  • 40. Kiến trúc
    • Cách thức quản lý phiên bản
    04/12/11
  • 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/subversion
    • Tortoise SVN (GNU General Public License): http://tortoisesvn.net/downloads
    04/12/11
  • 42. Demo 04/12/11
  • 43. Tham khảo
    • http://subversion.tigris.org
    • http://svnbook.red-bean.com/
    04/12/11
  • 44. Các giải pháp quản lý cấu hình miễn phí trên mạng 04/12/11
  • 45. Nội Dung 04/12/11 Giới thiệu 1 Assembla 3 Tồng kết 4
  • 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
    • Ưu điểm
      • Bỏ qua giới hạn địa lý
      • Tiện dụng
      • Miễn phí
      • Tiết kiệm tài nguyên
    • Nhược điểm
      • Tốc độ chậm
      • Dung lượng lưu trữ hạn chế
    04/12/11
  • 47. Danh sách website
    • Google Code
    • Assembla.com
    • Bounty Source
    • Source Forge
    • Collab.net
    • … .
    04/12/11
  • 48. 04/12/11 Giới thiệu 1
  • 49. Tổng quan
    • Google Code là gì?
      • Cung cấp dịch vụ project-hosting.
      • Miễn phí 100%.
      • Nhằm hỗ trợ cho các dự án mã nguồn mở.
    • FAQ: http://code.google.com/p/support/wiki/FAQ
    04/12/11
  • 50. Tạo project mới URL: http://code.google.com/hosting / 04/12/11
  • 51. Tạo project mới 04/12/11
  • 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
    • Source : quản lý cấu hình source code
    • Administer : dành riêng cho owner của project
    04/12/11
  • 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
    04/12/11
  • 54. Source 04/12/11
  • 55. Thêm thành viên 04/12/11
  • 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
      • Chỉ chấp nhận gmail
      • Khả năng tùy biến thấp
      • 1 Gmail chỉ tạo được 10 project
    04/12/11
  • 57. 04/12/11 Giới thiệu 1 Assembla 3
  • 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%
      • Add/remove tools không giới hạn
      • Thu phí dung lượng lưu trữ
    04/12/11
  • 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
    04/12/11
  • 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
      • Message Chat File
      • Image Milestones Tickets
      • Time Subverion&Trac Mercurial&Trac
      • … … …
    04/12/11
  • 61. Source/SVN Xài kèm TortoiseSVN 04/12/11
  • 62. Thêm thành viên
    • Mời thành viên
      • Tên đăng nhập
      • Email đăng ký
      • Từ các team khác
    • Phân quyền
    04/12/11
  • 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
      • Team Collaboration
      • Branded Portfolios - Project management with your own identity
      • Graphic Designers
      • Assembla Ticketing for Github
    04/12/11
  • 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
    • Nhược điểm
      • Dung lượng lưu trữ thấp: 200Mb/Workspace
    04/12/11
  • 65. 04/12/11 Giới thiệu 1 Assembla 3 Tồng kết 4
  • 66. Tổng kết
    • Miễn phí tội gì không xài!
    • Google Code
      • Tốt cho dự án vừa và nhỏ.
      • Thiên về quản lý cấu hình.
    • Assembla
      • Tốt cho dự án nhỏ (miễn phí)
      • Phục vụ nhiều mục đích khác trong dự án.
      • Tốt cho mọi loại dự án: nhỏ, vừa, lớn nếu có tiền
    04/12/11
  • 67. 04/12/11
  • 68. I. Continuous Integration II. CruiseControl.NET III. CruiseControl.NET Integration Process IV. Tools - Configuration Example V. Demo VI. Advantages and Disadvantages 04/12/11
  • 69. II. CruiseControl.NET III. CruiseControl.NET Integration Process IV. Tools - Configuration Example V. Demo VI. Advantages and Disadvantages 04/12/11 I. Continuous Integration
  • 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.
    04/12/11
  • 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
    04/12/11
  • 72.
    • Shorten the feedback loop
    • Automatic compilation
    • Automatic testing
    • Improve reporting
    04/12/11
  • 73.
    • Solution: continually integrate and test throughout the project
    04/12/11
  • 74.
    • Developers check out code into their private workspaces
    04/12/11
  • 75.
    • When done, they commit changes to the repository
    04/12/11
  • 76.
    • The CI server monitors the repository and checks out changes when they occur
    04/12/11
  • 77.
    • The CI server builds the system and runs unit and integration tests
    04/12/11
  • 78.
    • The CI server releases deployable artefacts for QA testing
    04/12/11
  • 79.
    • The CI server assigns a build label to the version of the code that it just built
    04/12/11
  • 80.
    • The CI server informs the team of the successful build and generates useful metrics
    04/12/11
  • 81.
    • If the build or tests fail, the CI server alerts the team
    04/12/11
  • 82.
    • Continually integrate and test throughout the project
    04/12/11
  • 83. I. Continuous Integration III. CruiseControl.NET Integration Process IV. Tools - Configuration Example V. Demo VI. Advantages and Disadvantages 04/12/11 II. CruiseControl.NET
  • 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 integrated successfully or not.
    04/12/11
  • 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
    04/12/11
  • 86. I. Continuous Integration II. CruiseControl.NET IV. Tools - Configuration Example V. Demo VI. Advantages and Disadvantages 04/12/11 III. CruiseControl.NET Integration Process
  • 87. 04/12/11
  • 88. 04/12/11
  • 89. 04/12/11
  • 90. I. Continuous Integration II. CruiseControl.NET III. CruiseControl.NET Integration Process V. Demo VI. Advantages and Disadvantages 04/12/11 IV. Tools - Configuration Example
  • 91.
    • Source Control:
      • CVS Source Control
      • Perforce Source Control
      • Visual Source Safe Source Control
    • Build tools
      • MsBuild
      • NAnt
      • Visual Studio
    04/12/11
  • 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 FilesCruiseControl.NETserver
      • Thêm các task cấu hình cho ccnet.
    04/12/11
  • 93. 04/12/11
  • 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. Password for the VSS user ID 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 VSS username must have write access to the repository. Specifies whether the current version of the source should be retrieved from VSS Specifies whether the most recent version of the source should be retrieved from VSS. If not, CCNet will obtain the source as of the time the build began. The folder into which the source should be retrived from VSS. If this folder does not exist, it will be automatically created The culture under which VSS is running Controls whether or not VSS gets a clean copy (overwrites modified files) when getting the latest source. Sets the timeout period for the source control operation 04/12/11
  • 95. 04/12/11
  • 96. 04/12/11
  • 97. The location of the MSBuild.exe executable. 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 MSBuild. A semicolon-separated list of the targets to run. Number of seconds to wait before assuming that the process has hung and should be killed. The full path to the assembly containing the custom logger to use. 04/12/11
  • 98. BUILD – VISUAL STUDIO 04/12/11
  • 99. BUILD - NANT 04/12/11
  • 100. I. Continuous Integration II. CruiseControl.NET III. CruiseControl.NET Integration Process IV. Tools - Configuration Example VI. Advantages and Disadvantages 04/12/11 V. Demo
  • 101. I. Continuous Integration II. CruiseControl.NET III. CruiseControl.NET Integration Process IV. Tools - Configuration Example V. Demo 04/12/11 VI. Advantages and Disadvantages
  • 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.
    04/12/11
  • 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.
    04/12/11
  • 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.
    04/12/11
  • 105. Thank You! 04/12/11

×