System Analyst Notes-case studies-software development methodology

Source: Internet
Author: User
Tags constant

Case study-Software development methodology
Problems with prototyping methods:
1, the customer has seen the working version of the software, but it is not understandable, because the prototype can be used quickly, the developer does not consider the overall quality of the software and long-term maintainability.
2, developers often need to implement the compromise so that the prototype can work as soon as possible.
XP (Extreme Programming) disadvantage
1, "write only when you want to use the document," and it's very easy to ignore the document in real-world execution.
2, simple design, test-first, refactoring, collective code ownership, continuous integration in a sense, the traditional habit of the programmer.
3, small release, pair programming, 40 hours of work per week, often make managers incomprehensible.
4, on-site customer practice is often unable to get customer understanding and satisfaction, and many customers in the acceptance of each small-scale release, will also raise objections.
Simple design: "Only for today's design, not too much to consider tomorrow's needs, because the present hypothesis may be wrong, perhaps tomorrow there will be a better way to achieve."
Small release: Each iteration implements a small release that submits a small version that can be used by the user.
Test-First and reconstruction: the key practice of "small step fast Walk" is helpful to improve the quality of software.

Software PRODUCT lines (software PRODUCT line) is a software development method that is very suitable for professional software organization, which can effectively improve the software survival rate and quality, shorten the development time and reduce the total development cost.
Software PRODUCT line features: process driven, specific areas, technical support, and Architecture Center.
Software PRODUCT line composition: core resources and product collections.

Several ways to build a product line:
1. Evolve the existing product into a product line.
2, replace the existing product set with the SOFTWARE PRODUCT line.
3, the whole new product line evolution.
4, the development of new software PRODUCT line.

Prototype life cycle: Appropriate selection, identification of basic needs, development work model, model validation correction and improvement, judgment of prototype completion, identification of detail description, judging prototype effects, organizing prototypes and providing documentation.
Methods to change the life-cycle constraints of the prototype: 1, only the screen is prototyped. 2, use the purchased application system as the initial model. 3, the subsystem is prototyped. 4, prototypes and demand recommendations. 5, the end user is prototyped.
Introduction of prototyping, the basic content of project management is as follows:
1, estimating the process. 2, the cost is redistributed. 3, change control. 4. Stop the activity.

RAD Rapid Application Development
Basic idea:
1, allowing users to participate more actively in the system analysis, design and construction activities.
2, a series of seminars are organized during the project, with the participation of project investors, users, system analysts, designers and developers.
3, through an iterative construction method, accelerate the demand analysis and design phase.
4, let the user extract to see a working system.
rad Development process:
1, Business modeling. Tools used: Data flow diagrams.
2, Data modeling. ... Flow chart.
3, Process modeling. ... Processing of detailed data flow diagrams.
4, application production.
5, testing and delivery.
RAD Features:
1, emphasizing user participation.
2, the development speed is accelerated by the use of reusable components.
rad Limitations:
1,rad the structure of the strength system itself, the system may work well in a short period of time, but the overall and long-term goals of the system may not be met.
2, accelerating the development cycle may lead to less time to improve project quality, consistency, and standardization of design.
3, not all software is suitable for RAD. Such as: difficult to modular, high performance, high technical risk.

To implement the 4 values, the Agile Alliance proposes 12 principles.
1, the early and continuous delivery of valuable intermediate software to customer satisfaction.
2, even in the late development, but also welcome changes in demand.
3, regular delivery of working software.
4, the whole process of development, business people and developers must work together every day.
5, developers provide the environment and support, give trust, people-oriented construction projects.
6, within the team, the most effective way to communicate is to face-to talk.
7, working software is the primary indicator for measuring progress.
8, promote the sustainable development speed, the responsible person, the developer and the user should maintain a long-term, constant development speed.
9, constant attention to good skills and design will increase agility.
10, the nature of the developer is simple.
11, the self-organizing team can make the best architectural design and requirement analysis.
12, the team should regularly reflect on how to work more effectively, and then make improvements to their behavior.

The focus of the structured approach is the system function, emphasizing the data flow and control flow of the business process, adopting the design process of modularization, top-down and gradual refinement. The development process is divided into several relatively independent stages, with clear structure and good readability. Fit: Scale

Large, highly structured system development.
Object-oriented attention and processing data, object-centric, can unify the data and its behavior. Object behavior is raised between objects through message exchange. ... Increased reuse of data and functionality. simplifies the development of system development process, the system can be maintained

have improved their sex.

Development process Model:
1, the software requirements are fully determined: waterfall.
2, the initial phase provides only iterative or progressive models of basic requirements such as: Helix model, fountain model, unified development process, and agile approach.
3, a transformation model based on formal development method.

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.