One major reason that models are created is to understand complex systems. This is particularly true in the software development field. By its very nature, a computer software system is created from a myriad of interacting parts that all combine to produce visible behavior. To understand and construct such systems it is necessary to deconstruct a large unmanageable problem domain into smaller domains that can be more readily addressed. This process of deconstruction is known as Systems Analysis, and was developed as a formal process in the early days of computer science during the 1950s [1-3]. This chapter presents a collection of approaches to the study of complex systems, including Formal Systems Analysis, Functional Decomposition,1 Scientific Method, and Process Based.