2009-09-24 38 views
8

Tôi sắp bắt tay vào một dự án chủ yếu sử dụng C# sẽ liên quan đến giao tiếp giữa máy khách và máy chủ.Cách lập kế hoạch dự án

Tôi đang tự hỏi làm thế nào để lên kế hoạch cho một dự án như thế này.

Tôi thường chỉ nhảy vào các dự án nhỏ hơn và tìm ra mọi thứ khi tôi đi vì tôi có sơ đồ trong đầu.

Làm cách nào để thiết kế một dự án phức tạp trước khi biết mọi thứ cần thiết?

Làm cách nào để biết tôi có thiết kế tốt hay thiết kế hấp dẫn?

Nghe ngu ngốc, tôi biết, nhưng tôi đã tự dạy mọi thứ tôi biết nên tôi chưa thực sự có kinh nghiệm làm việc theo nhóm hoặc với hướng dẫn.

Trả lời

6

"Làm cách nào để thiết kế một dự án phức tạp trước khi biết mọi thứ cần thiết?"

Nếu điều đó khiến bạn lo lắng, hãy tìm hiểu mọi thứ cần thiết.

Đọc Walker Royce's Software Project Management.

Dự án có bốn phần.

  1. Khởi động. Xác định Phạm vi nỗ lực và những thứ bạn sẽ cung cấp. Bạn đang làm gì bây giờ.

  2. Cộng tác. Lấy chi tiết về "cái gì" nó phải làm. Xác định "làm thế nào" nó sẽ làm điều đó. Những gì bạn cần làm tiếp theo.

  3. Xây dựng. Architecture, Lập trình, Thử nghiệm, Tích hợp.

    Làm cách nào để bạn xác thực thiết kế của mình? Một số kỹ thuật mà bạn có thể áp dụng.

    a. Công nghệ Spikes, còn được gọi là Spike Solution. Xác nhận công nghệ ở độ sâu càng sớm càng tốt.

    b. Test-Driven Development. Luôn lập kế hoạch thử nghiệm những gì bạn đang xây dựng.

    c. Gia tăng, phát triển Agile. Nhìn vào scrum. Xây dựng theo từng mảnh bắt đầu từ phần quan trọng và có giá trị nhất.

  4. Chuyển đổi. Thông thường để sản xuất, nhưng đôi khi để folks khác để hội nhập.

1

ba bước:

  1. đồ thị, những gì hiện những gì, những gì diễn ra nơi

  2. phác thảo và vẽ, phác thảo những gì sẽ xảy ra, và làm thế nào nó sẽ xảy ra, vẽ bất kỳ của

    GUI
  3. làm điều đó

nếu một và hai trận đấu và có ý nghĩa thì đó là một thiết kế tốt! Nếu nội dung bị lãng phí thì thiết kế sẽ bị lãng phí

1

một trong những trích dẫn yêu thích của tôi là từ một đồng nghiệp, người đã từng nói "Tôi thích lập trình càng nhiều càng tốt trước khi tôi bắt đầu viết mã". luôn luôn tiến về phía nó.

Tôi thích bắt đầu bằng cách vẽ nguệch ngoạc, viết những thứ bằng tiếng Anh đơn giản, sau đó bắt đầu viết sơ đồ chi tiết, UML hoặc bất kỳ thứ gì bạn thích. tìm ra cách tốt nhất để cấu trúc các đối tượng, các mẫu thiết kế nào (nếu có) được áp dụng. một khi bạn có một ý tưởng mạnh mẽ về cách ứng dụng sẽ hoạt động, hãy bắt đầu viết mã!

+0

quá xấu phong cách này là ra khỏi thời trang ngày nay – Karl

3

Trước khi bắt đầu một dự án lớn, tôi chỉ cần ngồi xuống một trình xử lý văn bản và thực hiện chính xác những gì tôi muốn phần mềm thực hiện. Sau đó, tôi phân chia chức năng thành các khu vực khác nhau. Tìm ra các phụ thuộc và viết một đặc tả chi tiết về cách tất cả sẽ phù hợp với nhau và làm việc (cách dữ liệu sẽ được cấu trúc, vv).

Tất cả điều này nếu trước khi tôi đã viết ngay cả một dòng mã. Bởi thời điểm này tôi biết chính xác những gì tôi cần phải viết, làm thế nào để viết nó và nơi nó thuộc về.

Trên hết, tài liệu bằng văn bản đã được hoàn thành chủ yếu!

2
  1. Xem 2-3 video đầu tiên từ Autumn of Agile. Nó bao gồm động não và viết ra câu chuyện của người dùng, thiết lập phần mềm PM (TargetProcess, tôi thích nó!), Xác định nhiệm vụ và lặp lại, v.v.
  2. Đọc Functional specification blog posts từ Joel Spolsky, nơi ông giải thích sự khác biệt giữa thông số kỹ thuật và chức năng là gì, và tại sao bạn cần chúng.
  3. và có lẽ tôi cũng khuyên bạn nên đọc Foundation of Programming sách điện tử ngắn, để làm quen với các vấn đề về xây dựng hệ thống doanh nghiệp (tốt, nó có thể được áp dụng cho hầu như bất kỳ phát triển phần mềm nào, theo ý kiến ​​của tôi), tại sao nhanh nhẹn, DDD, v.v.Thật sự tốt đẹp cao cấp cái nhìn tổng quan
+0

Đó là mùa thu của công cụ Agile thực sự là tuyệt vời! –

+0

Có mùa hè của NHibernate, đó cũng là tài nguyên học tập tuyệt vời. –

0

Đây là các bước mà tôi mất trước khi bắt đầu để viết mã trên một dự án:

  1. Tạo một bảng Trello (hoặc phần mềm khác mà bạn đang sử dụng cho nhiệm vụ của bạn)
  2. tầng Viết sử dụng cho dự án
  3. Tạo mô hình trường hợp sử dụng
  4. Tạo sơ đồ hoạt động
  5. Tạo ngày mockups e
  6. Chọn các công nghệ phù hợp với dự án của chúng tôi (điều này bạn có - C# bây giờ)
  7. Thiết kế database schema (nếu bạn sử dụng bất kỳ)
  8. Xác định các trường hợp sử dụng
  9. Thiết kế và thử nghiệm các API của bạn (nếu bạn sẽ có một)
  10. Start để viết mã của bạn, thực hiện việc thiết kế ...

đây là một bài viết trên blog rằng tôi đã viết cho FreeCodeCamp về chủ đề này, hy vọng nó sẽ giúp http://blog.freecodecamp.com/2015/06/10-steps-to-plan-better-so-you-can-write-less-code.html

Các vấn đề liên quan