Designing core ontologies
An Ontology for Software