Discussion on software component and software component testing

Source: Internet
Author: User
What is a widget. A widget, also called a component, is a feature part that is distributed independently. Its services can be accessed through an interface. Its characteristics are:
L software systems with relatively independent functions, can be clearly identified, interface by the contract designation, and context has obvious dependencies, can be deployed independently, and many third-party provided by the Assembly of software entities.
L software components must carry useful functions and follow some component models.
L Reusable Component (reusable Component) is a component with reusable value.

What is a widget. A widget, also called a component, is a feature part that is distributed independently. Its services can be accessed through an interface. Its characteristics are:
L software systems with relatively independent functions, can be clearly identified, interface by the contract designation, and context has obvious dependencies, can be deployed independently, and many third-party provided by the Assembly of software entities.
L software components must carry useful functions and follow some component models.
L Reusable Component (reusable Component) is a component with reusable value.
This definition emphasizes many important aspects of the component. First, it defines a component as a deliverable unit. Therefore, it has the characteristics of an executable package. Second, it mentions that artifacts provide some useful functionality that comes together to meet some of the requirements. These features actually conform to some design guidelines. Third, the component provides the service through the interface, uses the component, requests through these interfaces to make the request. Rather than by accessing the internal implementation details of the widget.
Why you use artifacts. The probable reasons are:
1. Containment of complexity. In any complex situation, there are some basic techniques that can be used to understand and manage complexity. These technologies include abstraction, decomposition, and incremental development. Any application-developed solution must provide a way to support these technologies.
2, shorten the release time. Even the ability to publish a solution is the basic approach to any software development project. This aspect becomes particularly important as the speed of technological change accelerates. The requirement to shorten the release time of software systems is often called "Internet" speed.
3, improve consistency. Most software systems share some important features with other previously developed, production, or production systems, and you must use this commonality as much as possible to improve consistency and reduce development costs.
4, improve productivity. Lack of proficiency in software development is a major problem for users of the system. Any new approach must improve the productivity of skilled employees so that they can produce high quality products at a faster rate.
5, reduce maintenance costs. Most of the cost of the software occurs after the initial deployment. To reduce maintenance costs, it is important to identify changes as much as possible, to carefully examine the impact of any possible changes, and to implement that change when predicting the impact on other parts of the system.

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.