Explain the component base software engineering and its advantages.

Component-based software engineering

 - Component-based software engineering is a development of computer-based systems with the help of existing reusable software procedure that accentuates the design and components. It is also known as reuse oriented model. 

- In this rather than developing the system from scratch we search for existing reusable components and design the desired system in terms of those components. 

- The advantage of the component-based approach is providing the reusability of these components. With component-based software engineering (CBSE), it may be argued that software development risk is reduced, as one is reusing existing tried-and-tested software rather than software developed from scratch. 

- Component-based development techniques involve procedures for developing software systems by choosing ideal off-the-shelf components and then assembling them using well-defined software architecture. 

- Component-based software engineering is an approach that mainly depends on building systems from the existing components and, providing support for the development of systems as assemblies of components.


The stages of the component-based software process which is different from other processes are the following:-



                                  figure:- component base software engineering 


  •  Requirement Specification: In this step, by consulting with the stakeholders of the system, requirements are collected and transform the requirements into a specification document.

  • Component Analysis: Based on the requirements specification, a search is made for components that can implement the given specification. Usually, there is no exact match, and the components that may be used only provide some of the functionality required.

  • Requirements Modification: During this stage, the requirements are analyzed using information about the new components. Requirements are then modified to reflect the services of available components.

  • System Design with Reuse: During this phase, the framework of the system is designed or an existing framework is reused. The designers take into account the components that are reused. Some new software may have to be designed if reusable components are not available.

  • Development and Integration: In this step, adapt the selected components so that they suit the existing component model or requirement specification. Some components would be possible to directly integrate into the system, some would be modified through parameterization process, some would need wrapping code for adaptation, etc. Software that cannot be externally procured is developed, and reusable components are integrated to create the new system.

  • System Validation: In this step, the developed system is tested to ensure that the software system does exactly what the customer wants and the software is defect-free. 


Advantages

  • Software development costs and risks are reduced.
  • Allows faster development and delivery of software. In principle, more reliable systems can be developed due to using previously tested components.

Comments

Popular posts from this blog

Suppose that a data warehouse for Big-University consists of the following four dimensions: student, course, semester, and instructor, and two measures count and avg_grade. When at the lowest conceptual level (e.g., for a given student, course, semester, and instructor combination), the avg_grade measure stores the actual course grade of the student. At higher conceptual levels, avg_grade stores the average grade for the given combination. a) Draw a snowflake schema diagram for the data warehouse. b) Starting with the base cuboid [student, course, semester, instructor], what specific OLAP operations (e.g., roll-up from semester to year) should one perform in order to list the average grade of CS courses for each BigUniversity student. c) If each dimension has five levels (including all), such as “student < major < status < university < all”, how many cuboids will this cube contain (including the base and apex cuboids)?

Describe how cloud computing technology can be applied to support remote ECG monitoring.

Explain market-Oriented Cloud computing architecture.