Android Engineering Development Notes (2)

Source: Internet
Author: User

first, the software life cycle 1. Software definition period:Software definition is a software system analyst and user work together to determine what the software is to be developed for the software system analysis, planning and specification, for future software development preparation. (1) Software task Project(2) Project Feasibility analysis(3) Develop a project plan(4) Software Requirements Analysis2. Software Development period:after the software specification has been defined, it can be said that the software is developed on this basis and the SOFTWARE PRODUCT is produced. During this period, the following tasks need to be completed in a phased manner. (1) Software outline design (also called overall design)Overview Design is the overall design of the software(2) detailed software designBased on the outline design, it is used to determine the internal details of each module in the software structure, providing the most direct basis for writing the program. (3) coding and unit testing(4) system integration test(5) System Confirmation Verification3. Software operation and maintenance periodSoftware maintenance process, that is, correcting software errors, improve the software functions. Second, the software development process ModelSoftware Process model is a standard development process which is summed up in the practice of software development and applicable to a certain kind of characteristic item. There are a lot of common software development process models, including waterfall model, evolutionary model (including prototype model, incremental model and helix model), fountain model, RUP process and so on. in practice, the software project development team must select a development process model to make certain tailoring according to the characteristics of the proposed development project and the grasping procedure of the user's requirement , and design a software development process suitable for the specific project. (1) waterfall model (also known as linear sequential model, the earliest period of occurrence, the most used)Planning, requirements analysis, design (summary design, detailed design), coding, testing, operation and maintenanceWaterfall model in the "waterfall" means that the process of development activities are strictly linear, like the peak poured down the water, the gradual fall. (documentation is the embodiment of each stage in the waterfall model)Features:projects with stable requirements, small changes and the ability of developers to get the full demand at oncesoftware developers with extensive experienceRisk(2) prototype modelcollect requirements, quickly prototype, build, transfer deployments, collect requirements(2.1) Rapid Prototyping methodThe rapid Prototyping method is the application of prototype model in the software analysis and design phase, which is used to solve the user's fuzzy understanding of the requirement of the software, or to test whether a certain design can get the expected result. The rapid prototyping approach has some of the following features:A, rapid prototyping is used to obtain user requirements, or to test the effectiveness of the design. B, the rapid prototyping is temporarily used, and therefore does not require integrity. C, rapid prototyping can not run through the software(2.2) prototype evolutionary modelprototype evolution of the development process is to consider that the software system to be developed, first developed a prototype system for the user, and then based on user feedback, the prototype system constantly modified, so that it gradually close to and finally reach the development goals. advantages and disadvantages of prototype evolutionary models (mobile photos)(3) incremental modelthe incremental model has the following characteristics:the incremental model is mainly applied to items with the following characteristics: (book P10)(4) Spiral modelSpiral model is not only a process model that introduces risk analysis and avoidance mechanism, but also an organic combination of waterfall model, rapid prototyping method and risk analysis method. (5) Fountain modelFountain model is designed specifically for object-oriented software development methods. (6) Unified software development processthird, software enterprise process capability Evaluation model (divided into five levels)First Level: initial levelSecond level: repeatable levelLevel Three: defining Levelslevel Fourth: Management levellevel Fifth: Optimization levelCMMI: It is the basis of continuous improvement of business capability of it enterprises. four, object-oriented technologyThe object-oriented approach is a new software development method that has emerged and flourished in the past 20 years, and it isObject-Oriented analysis (ooa--object-oriented);Object Oriented (ood--object-oriented design);programming to Objects (Oop--objict-oriented programming). the basic object-oriented concepts include objects, classes, messages, and so on. object: Object is anything you want to study. class: A class is a template for an object. message: A message is a specification of the communication between objects. Typically it consists of three parts: the object that receives the message, the name of the message, and the actual variable. the basic characteristics of object-oriented technology are: encapsulation, inheritance, polymorphism. Encapsulation: Encapsulation is a kind of information concealment technology, it is embodied in the human explanation. Inheritance: Inheritance is the mechanism by which subclasses automatically share data and methods between parent classes. Polymorphism : The action that an object makes based on the received message plane.

Android Engineering Development Notes (2)

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.