Software development is a complex and arduous task. It includes not only programming but also managing clients' requirements, programming the project and guaranteeing the logistics. A successful software project must have excellent programmers. To be more important, it must have a united team and the ability to manage and control the software development process.Software development process is not only a sequential process. In the whole process, people communicate with each other, and there must have some information transferred between phases. Therefore, team members are urgent to have a "software development business chart" which can show clearly the whole and all the details of the software development process so that the staff can understand the process and their works clearly. Fortunately, UML, the Unified Modeling Language can be used to model the software development process and help the staff understand the process. This paper can be divided into three parts, eight chapters in all.Part one includes chapter one, chapter two and chapter three. Firstly, this part introduces the history of the software industry. Then, it introduces the purpose and the frame of this paper by analyzing the problems and the research current situation in the software development process. The purpose of this paper is modeling the software development process in order to benefit the staff. Chapter two and three are theoretical foundations of this paper which clarify the research contents and methods. Chapter two introduces the contents of the business modeling. Chapter three introduces the UML and the Eriksson-Penker Extension which is specially used in the business modeling.Part two includes chapter four, chapter five, chapter six and chapter seven. This part is the emphasis and the core of this paper. Chapter four summarizes the software development process, discusses the necessary of modeling the software development process and introduces the contents and angles of the modeling. Then the next three parts begin to model one by one. The goal models define the goals and sub-goals of the software development process in order that developers can understand the goals in the beginning of the project. The process models are divided into five phases that include the Envisioning Phase, the Planning Phase, the Developing Phase, the Stabilizing Phase and the Deploying Phase. They describe the goals, the works, the team workers, the resources used and the interactions among phases. The resource and organization models describe the characters of the resources used in the software development process and the collaborations among staff.Part three includes chapter eight only. This part is about the conclusion and the prospect that summarizes the content, the innovation of this paper and points out the problems needed to research in depth. |