Investigation of software projects has shown that requirements analysis is one of the most problematic activities in software development. Textual requirements specifications are difficult to develop, understand, review, and maintain. Graphical modeling is widely recognized as a more effective analysis tool. Software industry has adopted UML (Unified Modeling Language) as de facto standard in software modeling. UML defines a powerful, but also difficult to learn, modeling toolkit: 13 types of diagrams, more than 100 inter-related metaclasses used as modeling concepts, and possibility to define custom extensions. Since UML doesn’t define modeling method, practitioners lack guidance on how to apply it efficiently to modeling software requirements, and apply it only fragmentally loosing many benefits that UML provides. In this paper, we present the analysis of modern requirements modeling techniques. Based on analysis results, we discuss how various domain and requirements analysis elements – semantic map of business concepts, lifecycles of business objects, business processes, business rules, system context diagram, use cases and their scenarios, constraints, and user interface prototypes – can be modeled using UML. We propose UML extensions and a practical UML-intensive framework necessary for concise requirements modeling. The application of this framework is demonstrated by modeling a case study – software system for library management – using customized MagicDraw environment. Our work is important for practitioners trying to adopt UML for requirements analysis and for scientists working on creating more detailed requirements analysis methods based on UML.