Requirements analysis – encompasses those tasks that go into determining the needs or conditions to meet for a new or altered product, taking account of the possibly conflicting requirements of the various stakeholders, such as beneficiaries or users. Competitive analysis (online algorithm) – shows how online algorithms perform and demonstrates the power of randomization in algorithms Lexical analysis – the process of processing an input sequence of characters and producing as output a sequence of symbols Object-oriented analysis and design – à la Booch Program analysis (computer science) – the process of automatically analysing the behavior of computer programs Semantic analysis (computer science) – a pass by a compiler that adds semantical information to the parse tree and performs certain checks Static code analysis – the analysis of computer software that is performed without actually executing programs built from that Structured systems analysis and design methodology – à la Yourdon Syntax analysis – a process in compilers that recognizes the structure of programming languages, also known as parsing Worst-case execution time – determines the longest time that a piece of software can take to run