Discussion on software development process

Source: Internet
Author: User

Recently, managers have been urging them to write software documents. however, since my own development has been completed by myself, and I cannot talk about standard development, I have not done much of the work that should be done, so I am a little new! I took some time to understand the two days. As far as PSP is concerned, I can talk about my own ideas:
When taking over a software project,
Project Plan:
Start time, start time, and end time...
Requirement Analysis:
(1) demand research: clarify the requirement personnel, contact them, obtain first-hand requirement information, and preliminarily determine the functions to be completed by the system, in what way, and may design some professional details.
(2) establish a requirement statement: based on the survey results, establish a preliminary requirement statement, and elaborate on the functions that the system should complete and the details it has learned, after that, the user confirms and signs the signature (at this stage, the change due to the user's needs may be repeated)
(3) build a prototype: quickly build a system prototype based on the user's confirmed needs, initially complete some system functions, and again confirm with the user. (at this time, the user's needs may be changed again, so we can accommodate it and warn you that if you change again later, you can only consider it later)
Software Design:
(1) Outline Design: Build a software module and use a tree chart to represent the overall architecture. Define the data dependency between modules and determine the hierarchy to be used by the system.
(2) Detailed Design: plan the functions to be completed for each module in detail, and consider the items to be included in each module in detail.
(3) Database Design
(4) Software Design Manual: describes in detail how each module and function is implemented in the system.
ProgramEncoding:
Coding implementation based on the software design instructions and requirements instructions. (Note: in this phase, if the user needs to change, consider future handling .) improve the system prototype, discover problems, contact users in a timely manner, and update the user requirement manual>
Software testing:
Perform black box testing (functional testing), user interface design testing, friendliness testing, stress testing, and robustness testing based on the requirement specification.
Software maintenance:
Maintain and improve the errors and deficiencies during use. If the maintenance is not performed by the original developer, the descriptive documents generated above will play a very good guiding role...

Software Engineering is not a personal job.
However, in order for us to have a clear idea in the development process, less detours and easy maintenance, standardized development is still very important.
On the other hand, sum up from practice and practice in the project so that the idea of software engineering will always be in the mind...

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.