(Excerpt) _ Database Design entry classic: planning and preparation through analysis _ 9.4 Project Management

Source: Internet
Author: User

9.4 Project Management
Now is the time to plan and set up a schedule, in which case there are some very good available project planning software tools. When the plan includes a database model design in a class software project, it usually contains multiple persons in the project. In this way, the planners are excluded from the project. If you do not use software tools and multiple people complete tasks that overlap and depend on each other, the final result is a lot of useless drawings. Everything may change. The plan will change. Staff may be ill and on vacation. They may find new jobs. Sometimes, people may not even appear! In other words, the expected things will change.
In fact, there is usually no practical or appropriate set of rules and steps when planning, setting up timelines, and budgeting. Such a set does not exist. In any planning process (including budgeting), it is impossible for each type of project to accurately predict the certainty of any degree. No one can really predict the future. Planning, setting up schedules, and budgeting require a flexible process that relies almost entirely on the expertise and past experience of planners. In addition, if some changes and unexpected obstacles or events are not predicted, the project should be able to quickly restore to normal.
9.4.1 project planning and timetable
Software development companies solve financial problems by setting a tight schedule in the Project Plan. In the field of software development, the bidding budget for different companies may be 50 times different, which is very common. In other words, the difference between the lowest price bidding and the highest price budget is huge. This indicates that there is speculation. Generally, the least experienced companies have the lowest bid price. The highest bidding price is probably the result of greed. The price between the average price and the maximum price may be the most authentic. Likewise, they are likely to make a profit and support expensive software tools 5 to 10 years later.
As mentioned earlier, many studies are usually targeted at project planning. Unfortunately, almost none of these studies have produced valuable and available results. Evaluation Based on experts' past experience is usually the best possible method.
Tip:
There is an International Standardization Organization named "ISO 9000-3 Model"
Institute (ISO) model. This model is mostly used to provide quality assurance for final products (for example, analysis of database models. The ISO model does not provide a description of the method used to complete the analysis process, but proposes a validity verification method.
The accuracy of the planned budget depends on the experience of the planners. Database designers, administrators, and programmers believe that their project managers and planners have not done anything. This idea is wrong. Planners take on all the risks and make bold guesses; programmers can begin to write mathematical precise programming code. So the next time you see the project manager, you will understand the cause. Their work is truly risky.
It is often used to describe projects in plan, budget, and project management (and sometimes interesting:
● "Why do chicks cross the road ?" --
This is a famous saying that software development consultants cannot continue. The company is famous for producing large amounts of paper. A large amount of paper helps software development companies make more profits. The more paper is produced, the more useless things are. However, the more paper is produced, the less likely things are to be ignored, and the higher the accuracy of planning and budgeting. Another problem caused by a large amount of paper is that no one has enough time to read them and does not want to read them.
● "With large and long printed paper and major titles, people can stop their activities as soon as possible ." --
This sentence can also be called "shirking responsibility ". Someone must take responsibility. The higher the level of the bearer, the better. It is better not to be held responsible by the planners. Planners have too many things to consider, so that they have no time to consider whether the proposed bold guesses can succeed or fail.
● "If it is fixed, do not break it ." -- If something runs normally, why should we change it?
● "Use existing system information, whether it is computed or stored on paper ." --
The existing structure usually provides us with more information about the company. However, if you are replacing a system, it is likely to conflict with the old system, so this approach is risky.
● "Don't try to re-invent tires "--
When planning to build software or a new database model, you can use the appropriate ideas put forward by others. Of course, you need to watch out for outdated ideas. Thorough investigation is required. Internet is the perfect source for getting available new and old ideas for free.
● "More resources do not mean faster work "--
The more people you participate in the project, the more confusion you create. The more manpower you invest in a project, the more difficult the project is to manage, rather than improving the project completion speed.
Figure 9-30 shows the style of the project schedule, including multiple persons, multiple technical persons and multiple tasks (overlapping and dependent ). The project schedule can be complex. If possible, simplify the timetable as much as possible. If a region exceeds the time limit, too many dependencies may cause problems. Backup content can be ensured based on personnel, available time, and other factors. The expected things will change. Plan the backup resources.
Figure 9-30 shows five independent tasks in the simplified project time Gantt diagram. Task 1 is assigned to Jim. There is no time conflict between Task 2 and Task 4, and they can all be assigned to Joe (individual ). Task 3 and Task 5 overlap more than once between Janet and Joe. In fact, Joe will be very busy. The Project Manager can allow overlap when the person who is completing the assignment can complete multiple concurrent operations.
Tip:
A Gantt chart is a graphical tool for project management. The Gantt chart is designed to support planning, coordination, and tracking of multiple tasks, taking into account graphical descriptions of the timetable. These tasks can be independent or mutually dependent. Many out-of-the-box software tools allow computing project management with Gantt charts (or other charts), including Microsoft
Project, Excel spreadsheet plug-in, and even Visio.


Figure 9-30 example project schedule Gantt
9.4.2 budget
When a project is budgeted, the budget is part of the plan, so it is open to experts for explanation. There are also research on the application of formal methods to budget. Many of these studies were not successful. In the business field, most observations provide experience-based guesses. Similarly, experts will barely prove and limit the methods and causes of their conclusions. As already stated, the budget is similar to the plan. It is a trained guess. No book can tell ordinary readers how to budget projects such as database modeling like this.
One of the major problems in software development (including the development and design of database models) is its inaccessibility. Software Projects are hard to limit, in part because they are unpredictable because they can be completely changed during development. Absolute complexity in software is another factor. Complexity exists not only in each independent unit and step. A certain step can be the analysis and design of the database model. Another step is to write the code of the front-end application. Complexity issues arise because all possibilities need to be taken into account. Similarly, the dependency between various parts of software development also produces complexity. These interdependent parts go from the highest level (for example, compare the database model and application code) to the smallest part (two different fields in the same table are compared in the database model ).
In short, it is difficult to budget database model analysis and design. The most common and successful approach is to estimate costs based on the estimated available time. The final result may exceed 50% of the expected result, sometimes more than the initial conservative estimate. This chapter has discussed many details:
● The cost of hiring third-party personnel-the cost of hiring third-party personnel in the form of experience of software development experts may be huge.
● Hardware overhead-hardware can be both cheap and expensive. In short, expensive hardware can produce the following:
·
Expensive hardware helps reduce software costs, but usually appears in the form of performance issues. Hardware upgrades can overcome the problems caused by hasty database design and software development. If you predict to grow and the selected hardware cannot keep up with the growth rate, the cost problem will occur. When using expensive hardware devices, you do not need to worry too much about the appropriate database and software applications. Hardware with high execution speed allows us to avoid many problems
· Expensive hardware can be complicated. It is costly to hire people who build and maintain hardware complexity. Simplified and inexpensive hardware requires less training and a lower level of technology. Low-tech labor is much cheaper.
● Maintenance --
Maintenance focuses on complexity and quality. The more complex things, the more difficult to maintain. In addition, low-quality products will increase the maintenance volume. Indirectly, maintenance is related to the database model and the survival time of the final application. How long does the software survive? How long have they been useful and productive? There is a critical point between continuous maintenance and complete rewriting. In other words, sometimes rebuilding databases and software applications from the beginning is more cost-effective than maintaining old software, because the old software has no maintenance value after many modifications.
● Training --
Training affects all levels, from technicians to a large number of end users on the Internet. Obviously, you cannot train Internet users in remote areas of the Earth. It is meaningless to try to train Internet users. People will lose interest in hard-to-use applications. You may start from this case again. Internal Personnel Training is different. The higher the complexity, the more training is included. Training expenses --
Sometimes it is a huge overhead.

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.