Software Project development is doomed to fail if it is not well planned

Source: Internet
Author: User
Software Project development is doomed to fail if it is not well planned

Principles of software project development and management

 

The development and management of software projects is a complex learning. coding is not a simple requirement. After coding is complete, it is as simple as project completion. If a project is not well planned, it is easy to fail. We also need to pay attention to a lot of things when creating a software project. Below we will summarize some software development guiding principles that are easy to turn a blind eye but very important.

Understanding of external environment

1. necessity principle: Users (customers) need application software to help them process information.

2. "offline" Principle 1: Users (customers) are usually not always sitting in front of their computers. They all have their own jobs to do, And those jobs are what they really want to do. If you are a secretary, e-brain will not help you with meeting minutes or arrange your favorite resort hotel. To be extreme, if you are a cleaner and a multi-touch surface, even if you see a small piece of rubbish on the street corner, you still need to use a broom to clear it.

3. "offline" Principle 2: Do not think of users (customers) as computer experts. After work, they will go home for dinner, watch TV, go shopping, and watch movies. Many people who are engaged in mobile apps are doomed to fail because they imagine that users will keep staring at their mobile phones from getting up to going to bed. The actual situation is: no one will do this.

4. Requirement Principle 1: "requirement" is not equal to "requirement ". If someone asks you to give him or her a radio that can watch a movie, you should tell him or her: "What you need is an MP4 Player with a radio ." Instead of developing a "movie radio" immediately ".

5. Demand Principle 2: the demand will change. So what you need to do is to discover this change as soon as possible and improve your ability to respond to it as much as possible.

6. Many people are not aware of the importance of "information" and software for processing information to improve their work. But this is not their "error ".

Development Principles

1. Key Technologies! "There is no technical problem. The problem is ..." This can only prove that this person is technically faulty.

2. However, technology needs to be guided by users' (customer) needs. Always select (or even learn) the technology as needed, instead of the opposite.

3. restrictive principle: technology cannot be achieved at all! For more information, see "'offline' Principle 1"

4. Applicability principle: as long as the analysis is in place and the user (customer) needs are met, the technology will surely be realized. See "necessity principle"

5. "Speed" principle: Unless coding (coding) accounts for 50% or higher in the entire production process of the software, any effort to increase the encoding speed in exchange for faster progress will end up failing. But is there any code that accounts for even more than 50% of projects in the entire software production process? No. Therefore, any effort to increase the encoding speed in exchange for faster progress will end up failing.

Why? Refer to "demand principle 1" and "demand principle 2" and the following "Management Principles ".

Management Principles

1. principles related to technology: Technology determines the process and type of work, and thus determines the composition of the team and the basis of all management (basic technical assumptions ).

A Web application obtains data from the server and combines the data into a webpage to present the data to the user. Therefore, your team should have members who will make webpages and write code to fetch data from the database. In addition, in progress, the webpage should be completed earlier than the code for integration.

2. As demand changes (and may change quickly), the most adaptable technology should be selected from the very beginning to reduce the impact on management.

3. "least" principle: Any management and technical efforts and skills are more specific than at the very beginning. If this is not possible, try:

4. "design first" principle: give design more time as much as possible. This is our process of thinking. If you cannot do this, try:

5. "Death sprint": Let's make it out first and change it later. However, please make sufficient mental preparations. What you need to deal with is not only the increase in the overall cost and maintenance workload, what's more serious is the question of team members, endless overtime, and a gradual drop in morale.

6. "minimum management" principle: if you still want to control the production process of the software, do a good job of configuration management.

Every time you get the latest code from the configuration library on any server, you can complete the deployment within 10 minutes. The software deployed in the production environment is also in this version, it should be similar.

7. "national conditions" principle: the management method that suits you must be explored from your own practice and needs. Other theories, methods, and practices can only be used as a reference.

Software Project development is doomed to fail if it is not well planned

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.