As software systems become more and more complex and software artifacts developed by third party emerge frequently, the move
towards COTS-based system engineering is a natural maturation process of software engineering. However, current requirements
engineering methods for COTS-based systems have proven to be less successful than expected. The paper is an attempt to identify
key properties of existing COTS software and other software components. We suggest a systematic approach which examines COTS-related
issues under three linguistic levels: lexicon, syntax, and semantics. The driving force behind this approach by analogy is
to outline a new requirements engineering method for COTS-based systems.