Rec Sys 101
Rec Sys 101
net/publication/2862410
CITATIONS READS
70 1,065
4 authors, including:
All content following this page was uploaded by Michael R. Lyu on 20 November 2014.
Component Requirement
Document (CRD)
Structure for
Figure 3. Quality assurance model for both Data naming & Component
components and systems Dictionary Describing Modeling
Document
old system, component requirement analysis consists of Existing
Draft Component
Fault
four main steps: requirements gathering and definition,
Self-Testing
requirement analysis, component modeling, and (Function)
contract manager; 2) All candidate components should be Specific System & Other
Component Requirements
tested to be free from all known defects; and 3) Testing Component
Component
Document Component
should be in the target environment or a simulated Development
Customization
Document
environment. The component certification process Reject
Component Changed
and the output should be testing documentation for New Component Document
system maintenance.
Component
Testing
Component
Selecting
4.5 System Architecture Design
Component fit for the special
requirements System architecture design is the process of
Acceptance System evaluating, selecting and creating software architecture of
Contract Signoffs, Maintenance
Payments a component-based system.
The objectives of system architecture design are to
collect the users requirement, identify the system
Figure 6. Component certification process specification, select appropriate system architecture, and
overview determine the implementation details such as platform,
programming languages, etc.
4.4 Component Customization
System architecture design should address the
Component customization is the process that involves advantage for selecting a particular architecture from
1) modifying the component for the specific requirement; other architectures. The process overview diagram is as
2) doing necessary changes to run the component on shown in Figure 8. This phase consists of system
special platform; 3) upgrading the specific component to requirement gathering, analysis, system architecture
get a better performance or a higher quality. design, and system specification. The output of this phase
should be the system specification document for
The objectives of component customization are to
integration, and system requirement for the system testing
make necessary changes for a developed component so
phase and system maintenance phase.
that it can be used in a specific environment or cooperate
with other components well.
4.6 System Integration
All components must be customized according to the
operational system requirements or the interface
System testing is the process of evaluating a system
to: 1) confirm that the system satisfies the specified
Initiators
requirements; 2) identify and correct defects in the
Requests for New Systems system implementation.
Format &
Requirement
Document
Structure System Requirement The objective of system testing is the final system
Gathering
Template
Current
integrated by components selected in accordance to the
Draft System Requirements
Document
Document system requirements. System testing should contain
System Requirement function testing and reliability testing. The process
Analysis
overview diagram is as shown in Figure 10. This phase
System Requirement Document
consists of selecting testing strategy, system testing, user
System Architecture acceptance testing, and completion activities. The input
Design System
Maintenance should be the documents from component development
System Architecure
and system integration phases. And the output should be
System System System the testing documentation for system maintenance.
Testing System Specification System Specification Integration
Requirement Document
System Design
Document
the system requirement documentation and the specific User Accepted System
architecture. There are four steps in this phase: Test Completion System
System
Requirement 4.8 System Maintenance
Requirements for New
Systems System maintenance is the process of providing
System Architecture System
Architecture Integration service and maintenance activities needed to use the
Current software effectively after it has been delivered.
Component Draft System
Self-Testing
The objectives of system maintenance are to provide
an effective product or service to the end-users while
Fault Component correcting faults, improving software performance or
Component
Component
Requirement
Component
other attributes, and adapting the system to a changed
Changing Certification environment.
Selecting New Component
There shall be a maintenance organization for every
System Final System
Testing Final System System System Integration Maintenance
software product in the operational use. All changes for
Document the delivered system should be reflected in the related
documents. The process overview diagram is as shown in
Figure 11. According to the outputs from all previous
phases as well as request and problem reports from users,
Figure 9. System integration process overview system maintenance should be held for determining
support strategy and problem management (e.g.,
4.7 System Testing
identification and approval). As the output of this phase, [8] M.R.Lyu (ed.), Handbook of Software Reliability
a new version can be produced for system testing phase Engineering, McGraw-Hill, New York, 1996.
for a new life cycle. [9] Microsoft:http://www.microsoft.com/isapi, Mar, 2000.
[10] J.Q. Ning, K. Miriyala, W. Kozaczynski,, “An
Architecture-Driven, Business-Specific, and Component-
Based Approach to Software Engineering,” Proceedings
5. Conclusion and Future Work Third International Conference on Software Reuse: Advances
in Software Reusability, 1994, pp. 84 -93.
Users
[11] OMG: http://www.omg.org/corba/whatiscorba.html,
Request and Problem Reports
Mar, 2000.
Documents,
[12] G. Pour, “Component-Based Software Development
All Previous Support
Phases
Strategies
Strategy
Approach: New Opportunities and Challenges,” Proceedings
Technology of Object-Oriented Languages, 1998. TOOLS
User Support Agreement 26., pp. 375-383.
Problem [13] G. Pour, “Enterprise JavaBeans, JavaBeans & XML
Management
Expanding the Possibilities for Web-Based Enterprise
Change Requests Application Development,” Proceedings Technology of
Object-Oriented Languages and Systems, 1999, TOOLS 31,
System New Version System
Maintenance Testing pp.282-291.
[14] G.Pour, M. Griss, J. Favaro, “Making the Transition to
Component-Based Enterprise Software Development:
Figure 11. System maintenance process
Overcoming the Obstacles – Patterns for Success,”
overview Proceedings of Technology of Object-Oriented Languages
and systems, 1999, pp.419 – 419.
[15] G.Pour, “Software Component Technologies: JavaBeans
and ActiveX,” Proceedings of Technology of Object-Oriented
In this paper, we survey current component-based Languages and systems, 1999, pp. 398 – 398.
software technologies and the features they inherit. We [16] C. Rajaraman, M.R. Lyu,"Reliability and Maintainability
propose a QA model for component-based software Related Software Coupling Metrics in C++ Programs,"
development, which covers both the component QA and Proceedings 3rd IEEE International Symposium on Software
the system QA as well as their interactions. As our future Reliability Engineering (ISSRE'92), 1992, pp. 303-311.
work we will apply the QA model to real world projects [17] C. Rajaraman, M.R. Lyu, "Some Coupling Measures for
C++ Programs," Proceedings TOOLS USA 92 Conference,
so that it can actually guide the practices of component-
August 1992, pp. 225-234.
based software development.
[18] C.Szyperski, "Component Software: Beyond Object-
Oriented Programming," Addison-Wesley, New York, 1998.
[19] SUN http://developer.java.sun.com/developer,Mar. 2000
[20] Y.M.Wang, O.P.Damani, W.J. Lee, “Reliability and
References Availability Issues in Distributed Component Ojbect Model
(DCOM),” Fourth International Workshop on Community
[1] A.W.Brown, K.C. Wallnau, “The Current State of CBSE,”
Networking Proceedings, 1997, pp. 59 –63.
IEEE Software , Volume: 15 5, Sept.-Oct. 1998, pp. 37 – 46. [21] S.M. Yacoub, B. Cukic, H.H. Ammar, “A Component-
[2] M. L. Griss, “Software Reuse Architecture, Process, and Based Approach to Reliability Analysis of Distributed
Organization for Business Success,” Proceedings of the
Systems,” Proceedings of the 18th IEEE Symposium on
Eighth Israeli Conference on Computer Systems and
Reliable Distributed Systems, 1999, pp. 158 –167.
Software Engineering, 1997, pp. 86-98.
[22] S.M.Yacoub, B. Cukic, H.H.Ammar, “A Scenario-Based
[3] P.Herzum, O.Slims, "Business Component Factory - A Reliability Analysis of Component-Based Software,”
Comprehensive Overview of Component-Based Development Proceedings 10th International Symposium on Software
for the Enterprise," OMG Press, 2000.
Reliability Engineering, 1999, pp. 22 –31.
[4] Hong Kong Productivity Council,
[23] S.S.Yau, B. Xia, “Object-Oriented Distributed
http://www.hkpc.org/itd/servic11.htm, April, 2000.
Component Software Development based on CORBA,”
[5] IBM:http://www4.ibm.com/software/ad/sanfrancisco, Proceedings of COMPSAC’98. The Twenty-Second Annual
Mar, 2000. International, 1998, pp. 246-251.
[6] I.Jacobson, M. Christerson, P.Jonsson, G. Overgaard,
"Object-Oriented Software Engineering: A Use Case Driven
Approach," Addison-Wesley Publishing Company, 1992.
[7] W. Kozaczynski, G. Booch, “Component-Based Software
Engineering,” IEEE Software Volume: 155, Sept.-Oct. 1998,
pp. 34–36.