C^tJ O19OO(^'J.Tfi^'i- Universiti Teknologi MARA Requirement Analysis Using UML Approach for Research Management System (RMS) Enamul Hasan Bin Rusly Thesis submitted in fulfillment of the requirements for Bachelor of Science (Hons) Information System Engineering Faculty of Information Technology And Quantitative Science April 2005
DECLARATION I certify that this thesis and the research to which it refers are the product of my own work and that any ideas or quotation from the work of other people, published or otherwise are fully acknowledged in accordance with the standard referring practices of the discipline APRIL 2005 ENAMUL HASAN BIN RUSLY 2002611339
APPROVAL REQUIREMENTS ANALYSIS USING UML APPROACH FOR RESEARCH MANAGEMENT SYSTEM BY ENAMUL HASAN BIN RUSLY This thesis was prepared under the direction of supervision of thesis coordinator, Prof Madya Dr. Datin Noor Habibah Hj Arshad, and it has been approved by thesis supervisor, Pn. Suriyati Razali. It was submitted to the Faculty of Information Technology and Quantitative Science and was accepted as partial fulfillment of the requirements for degree on Bachelor of Science. Approved by: ^ Pn. Suriyati Razali Thesis Supervisor Date: 111
ACKNOWLEDGEMENT In The Name ofallah, The Most Gracious and The Most Merciful, and Him Alone worthy of all praise. 1 am grateful to Allah S.W.T for giving the opportunity to complete my final year project. With the cooperation of many parties, and many long nights, this project was successfully carried out on time even though I had to face many risk and challenges. As for me, this is a good experienced and I'm so grateful with this opportunity. First of all, I would like to express my deepest attribute to my project supervisor, Pn. Suriyati Razali for her valuable advice and suggestions throughout the current project and during the duration of this course. I would like to thank her for her comments, guidance, and suggestion on this project. Special thanks go to, Prof Madya Dr. Datin Noor Habibah Hj Arshad for giving valuable insight and comments that has helped me enormously in the completion of this thesis. Finally I want to thanks my family, who have supported me all the way and not to be forgotten, thanks to all my lecturers and beloved friends, for the encouragement and friendship. Thank you. IV
ABSTRACT Good requirement specification provides a good guideline to develop a system such as a web-based application. This research performs requirement analysis phase in order to develop the web-based application. The objectives of this project are to analyze the data requirements needed, to produce a Software Requirement Specification (SRS) for developing the Research Management System (RMS) and to design the model of RMS. This project focuses on research management process at Institute of Research, Development and Commercialization (IRDC) in MARA University of Technology (UiTM), Shah Alam. The Unified Software Development Process (USDP) methodology and UML approach were used in this research. This research management process would be integrated in a web-based application. Web-based application is a solution for the IRDC. Beside that, it enhances the IRDC services.
TABLE OF CONTENTS DECLARATION APPROVAL ACKNOWLEDGEMENT ABSTRACT LIST OF TABLES LIST OF FIGURES LIST OF APPENDICES LIST OF ABBREVIATIONS ii iii iv v x xi xiii xiv CHAPTER ONE INTRAODUCTION 1 1.1 Project Background 1 1.2 Problem Description 2 1.3 Project Objectives 3 1.4 Project Scope 3 1.5 Project Significant 4 1.6 Project Limitations 4 1.7 Overview of This Report 5 1.8 Conclusion 6 CHAPTER TWO LITERATURE REVIEW 7 2.1 Introduction 7 2.2 Unified Modeling Language (UML) 7 2.3 Diagrams in UML 8 2.3.1 Structural Diagrams 9 2.3.1.1 Class Diagram 9 2.3.1.2 Object Diagram 9 VI
2.4 2.5 2.6 2.7 2.8 2.9 2.10 2.11 2.3.1.3 Component Diagram 2.3.1.4 Deployment Diagram 2.3.2 Behavioral Diagrams 2.3.2.1 Use Case Diagram 2.3.2.2 Sequence Diagram 2.3.2.3 Collaboration Diagram 2.3.2.4 Statechart Diagram 2.3.2.5 Activity Diagram The Unified Software Development Process (USDP) Requirements Analysis System Development Live Cycle (SDLC) Comparison between SDLC and USDP Prototyping Software Requirement Specification (SRS) Research Management System Conclusion 10 10 10 10 10 11 11 11 12 15 16 18 20 22 23 25 CHAPTER THREE APPROACH AND METHODOLOGY 3.1 Introduction 3.1.1 Incepfion 3.1.2 Elaboration 3.1.3 Construction 3.1.4 Transition 3.2 Data Collection 3.2.1 Offline Resources 3.2.2 Online Resources 3.3 Requirements Capture and Modelling 3.3.1 Fact Finding Technique 3.3.L1 Background Reading 3.3.1.2 Interviewing 26 26 26 26 27 27 30 30 30 30 31 31 31 Vll
3.3.1.3 Document Sampling 32 3.3.1.4 Web-Observation 33 3.3.2 Use Cases 34 3.4 Requirements Analysis 34 3.4.1 Documenting Requirements 35 3.4.2 Use Case Realization 35 3.5 Prototype Development 36 3.6 Conclusion 37 CHAPTER FOUR RESULTS AND FINDINGS 38 4.1 Introduction 38 4.2 Web-Observation Analysis 38 4.3 The Problem of the Current Process 42 4.3 Functional Requirements 42 4.5 Non-Functional Requirements 43 4.6 The Reuse Components 44 4.6.1 Financial Account Information System (FAIS) 44 4.6.2 StaffResources Information System (STARS) 44 4.7 Requirement List 44 4.8 Use Case Model 46 4.9 User Interface Design 51 4.9.1 Main Menu User Interface 51 4.9.2 Application Menu User Interface 52 4.9.3 Research Project Proposal Form User Interface 53 4.9.4 Project Leader Information Form User Interface 54 4.9.5 Research Fund Form User Interface 55 4.9.6 Research Assistant User Interface 56 4.9.7 Achievement Report Form User Interface 57 5.0 Conclusion 58 VllI
CHAPTER FIVE CONCLUSION AND RECOMMENDATION 59 5.1 Conclusion 59 5.2 Recommendation 60 REFERENCES APPENDICES IX
LIST OF TABLES CHAPTER TWO LITERATURE REVIEW Table 2.1: System Development Process Activities 14 CHAPTER THREE APPROACH AND METHODOLOGY Table 3.1: Universities and URL Addresses 33 Table 3.2: Requirements Capture and Modelling Activity 34 Table 3.3: Requirements Analysis Activity 35 CHAPTER FOUR RESULTS AND FINDINGS Table 4.1: Local Universities 38 Table 4.2: International Universities 40 Table 4.3: Problems of the Current Process 42 Table 4.4: Requirement List 45 Table 4.5: Use Cases Description 48 Table 4.6: The Characteristic of Each Actor 50
LIST OF FIGURES CHAPTER TWO LITERATURE REVIEW Figure 2.1: Phases and workflows in the USD? 13 Figure 2.2: Phases and Workflows in the SDLC 19 CHAPTER THREE APPROACH AND METHODOLOGY Figure 3.1: Flow of Methodology 29 Figure 3.2: A Prototyping Life Cycle 36 CHAPTER FOUR RESULTS AND FINDINGS Figure 4.1: Comparison Features and Functionality between Local and International Universities 41 Figure 4.2: Use Cases of Research Management System (RMS) 46 Figure 4.3: Main Menu page 51 Figure 4.4: Application Menu page 52 Figure 4.5: Research Project Proposal Form page 53 Figure 4.6: Project Leader Information Form page 54 Figure 4.7: Research Fund Form page 55 Figure 4.8: Research Assistant Form page 56 Figure 4.9: Research Achievement Form page 57 APPENDIX D COLLABORATION DIAGRAMS Figure Dl: Apply Research Assistant Figure D2: Apply Research Fund Figure D3: Apply Research Proposal Figure D4: Submit Report Figure D5: Maintain Report XI
Figure D6: Maintain Research Fund Figure D7: Maintain Research Proposal Figure D8: Maintain Research Assistant Figure D9: Approve Application - Research Assistant Figure DIO: Approve Application - Achievement Report Figure DII: Approve Application - Research Fund Figure D12: Approve Application - Research Project Proposal Figure D13: View Project Info - Staff: Research Assistant Figure DI4: View Project Info - Staff: Achievement Report Figure Dl 5: View Project Info - Staff: Research Fund Figure DI6: View Project Info - Staff: Research Project Proposal Figure D17: View Project Info - Researcher: Achievement Report Figure Dl 8: View Project Info - Researcher: Researcher Assistant Figure DI9: View Project Info - Researcher: Researcher Fund Figure D20: View Project Info - Researcher: Researcher Project Proposal Xll
LIST OF APPENDICES APPENDIX TITLE APPENDIX A INTERVIEW SESSION APPENDIX B SUPPORTED DOCUMENTS APPENDIX C SOFTWARE REQUIREMENT SPECIFICATION APPENDIX D COLLABORATION DIAGRAMS xiu
LIST OF ABBREVIATIONS USDP SDLC RMS UML OMG SRS IRDC UiTM Unified Software Development Process Software Development Life Cycle Research Management System Unified Modeling Language Object Management Group Software Requirement Specification Institute of Research, Development and Commercialization Universiti Teknologi Mara xiv
CHAPTER ONE INTRODUCTION 1.1 Project Background Research is an important aspect in educational institute such as university. Research made by the academic staff could increase the growth of a university. Research is known as a new frontier of knowledge, to train and build up specialist and give an opportunity for a new result and improving and enhancing the results from the previous research. In order to encourage the research operation in MARA University of Technology (UiTM), Institute of Research, Development and Commercialization (IRDC) has been given the responsibility to encourage the academic staffs to do research program or project in their field such as in Information Technology (IT), Science, Engineering, Economic or Social area. IRDC also responsible in managing and monitoring the research progress and organize the procedure and guideline of research for the researchers. Currently, IRDC is using manual process for the current system of the research management. In this research, the Research Management System (RMS) is introduced. RMS is an integrated, faster and more flexible system for managing and monitoring research at universities. Users can directly access the RMS web based system via internet by using web interface. Through internet, RMS will improve the speed, flexibility, and convenience for managing the research process. All data and important notices will be easily updated through the RMS system. Even though, RMS systems in Malaysia's
universities are not expanded well. This scenario is still new in Malaysia compared to other countries such as United Kingdom and Scotland. The RMS platform is very convenience and easy for department in university to manage and monitor research progress, updates data, and organizes the procedure and guideline. Before implementing it, the requirements of RMS system must be captured and analyzed to fulfill the users' requirements and users' interest. This research focuses on finding needed requirements to be analyzed and to design a model for representing the RMS system by using UML approach. 1.2 Problem Description Good requirement specification provides good guideline to develop a webbased system. This research focuses on the requirement analysis for developing the web-based application. During the requirement analysis phase. Unified Modeling Language (UML) was used by the researcher to clarify the requirement and design a model to interpret the requirement into logical view. The requirement analysis is important in the preparation specification. The specification act as a guideline for developing the web based applications. Therefore, Institute of Research, Development and Commercialization (IRDC) in MARA University of Technology (UiTM) was selected to study the requirements needed. In the traditional research management's process, it is manually conducted which means it is not computerized. By using the traditional method, there are several problems or limitations faced, especially by the
researcher. Researchers need to maintain the progress and status of their research procedure. Researchers are having difficulty in getting related information in a short time and also difficult to check the important date and notice from the IRDC. Besides, daily task managed by IRDC staff is not well organized. It is because, the number of research is increasing in every years. Furthermore, through the manual process the guideline and procedure is hard to manage and organize. The data is difficult to be stored, managed and searched without using the database and the new information difficult to be updated in a short period of time through the manual process. 1.3 Project Objectives The objectives of this research are as: 1. To identify requirements needed for Research Management System 2. To produce a Software Requirement Specification (SRS) for Research Management System. 3. To design the model for representing the procedure of IRDC Research Management System. 1.4 Project Scope This research is conducted at Institute of Research, Development and Commercialization (IRDC) in UiTM. The study concentrates on producing the requirements analysis for RMS using UML approach. Beside that, a design model for representing procedure of RMS will be developed.
1.5 Project Significant This research provides benefits to the Institute of Research, Development and Commercialization (IRDC) and UiTM researchers where they can use the RMS as new way to improve the research management to be more effective and convenience. Accurate description of requirements that determine in this research can be a guideline in the process of RMS development for IRDC in thefiiture.this research explains every flow of each processes detail. It helps to design the proposed system well. This research also provides a prototype for the proposed system. In addition, web-based application is aimed to enhance the public services. At the same, time and cost constraints of the paper can be reduced. 1.6 Project Limitations Security specifications are not prepared for the proposed system that explains security mechanisms such as data encryption. This is because of time constraint and the lack of the knowledge about the security technology. This research only explains thefimctionaland non-fimctional, the flow and logical design of the proposed RMS. There are several limitations by using prototype. The designed prototype is not the actual system. It was developed as an overview of the proposed system to the end-users and it is used to refine the user requirement which is focused on the interface design.
1.7 Overview of This Report This report covers the requirement analysis process of developing RMS and explains detailed progress of the research. This report is divided into five chapters. There are introduction, literature review, research approach and methodology, resuh andfinding,conclusion and recommendation. Chapter 1, "Introduction" describes clearly the project background, the problem of the project, the objective of the project, the scope of the project, the significance of the project, and the limitations of the this project. Specifically, this chapter describes the overview of this report. Chapter 2, "Literature Review" describes clearly the definition of terminology related to the research. Chapter 3, "Research Approach and Methodology" describes clearly the research approach and research model used in this research. Chapter 4, "Result and Finding" describes clearly the analysis result and discuss the outcomes that has performed and accomplish. Chapter 5, "Conclusion and Recommendation" discusses conclusion attained during this research and recommendation for further work to be carried out.
The appendices section contain the document are relevant to this research such as Software Requirement Specification, charts and diagram used. 1.8 Conclusion The success of this analysis provides good impact during the designing and implementing the RMS for IRDC. In addition, RMS will be useful to IRDC and researchers as new ways to interact each other, especially for IRDC because it is difficult for them to manage and monitor the research progress. Beside that, IRDC and researchers can share related information through the RMS. Furthermore, all data and information will centralize in one place and RMS will be accessibility for the IRDC and UiTM researchers. This research will define the research requirements and do an analysis, so that it will be easier to implement the RMS later. Good analysis is a key of successful design of research management platform for IRDC.
CHAPTER TWO LITERATURE REVIEW 2.1 Introduction This chapter reveals articles that related to this research. In this chapter, it also examines about the definition of each term been used, and discusses a previous study done by other researchers that related to this research. Most of resources indicated in this chapter were offline resources such as books and journals, and online resources such as online journals and articles. 2.2 Unified Modeling Language (UML) According to Wang, Hamilton and Chan (2002), the Unified Modeling Language (UML) is a graphical language for visualizing, specifying, constructing, and documenting the artifacts of a software-intensive system. UML is based upon the object-oriented paradigm. UML can be applied to different types of systems, domains, methods, and/or processes. UML enables software teams to capture, communicate, and leverage strategic, tactical, and operational knowledge to improve software quality, reduce costs, and reduce the product cycle time. UML was originally developed by Rational Software Corporation in cooperation with Grady Booch, James Rumbaugh and Ivar Jacobson. UML is a standard from the Object Management Group (OMG). The UML is a visual modeling language; it is a modeling language specification that enables processes. UML consists of 7 diagrams. Those 7 diagrams are use case diagrams, class and object diagrams, collaboration diagrams, sequence diagrams, state transition diagrams, activity diagrams.
and component and deployment diagrams. The diagrams are the actual graphs that show model element symbols arranged to illustrate a particular part or aspect of the system. Cranefield, Haustein and Purvis (2001) in their studied state the UML also include Object Constraint Language (OCL) that can be used to constraint the possible models a specification in ways that cannot be achieved using the UML structural elements alone. OMG (2003) stated the goals of UML are to provide users with a ready-to-use, expressive visual modeling language to develop and exchange meaningful models and to furnish extensibility and specialization mechanisms to extend the core concepts. Beside that, UML goals also to support specifications those are independent of particular programming languages and development processes; to provide a formal basis for understanding the modeling language, to encourage the growth of the object tools market, to support higher-level development concepts such as collaborations, frameworks, patterns and components and to integrate best practices. 2.3 Diagrams in UML According to Booch, Rumbaugh, and Jacobson (1999), a diagram is a graphical presentation of a set of elements, most often rendered as a connected graph of vertices (things) and arcs (relationship). One use diagrams to visualize the system from different perspectives. Because no complex system can be understood in it's entirely from only one perspective, the UML defines a number of diagrams so that one can focus on different aspects of the system independently. In modeling real system, no matter what the problem domain is, one will find creating the same kinds of diagrams, because they represent
common views into common models. Typically, UML defines four diagrams to view the static part of the system :- i) Class Diagram ii) Object Diagram iii) Component Diagram iv) Deployment Diagram In addition, UML defines five diagrams to view the dynamic parts of a system :- i) Use Case Diagram ii) Sequence Diagram iii) Collaboration Diagram iv) Statechart Diagram v) Activity Diagram 2.3.1 Structural Diagrams 2.3.1.1 Class Diagram A class diagram shows a set of classes, interface, and collaborations and their relationships. Class diagrams are the most common diagrams found in modeling object-oriented systems. One will use the class diagram to illustrate the static design view of a system. Class diagram that include active classes are used to address the static process view of a system. 2.3.1.2 Object Diagram An object diagram shows a set of objects and their relationships. One will use object diagrams to illustrate data structures, the static snapshots of instances of the things found in class diagrams. Object diagrams address the static
design view or static process view of a system just as do class diagrams, but from the perspective of real or prototypical cases. 2.3.1.3 Component Diagram A component diagram shows a set of components and their relationships. One will use component diagrams to illustrate the static implementation view of the system. Component diagrams are related to class diagrams in that a component typically maps to one or more classes, interfaces of collaboration. 2.3.1.4 Deployment Diagram A deployment diagram shows a set of nodes and their relationships. One will use deployment diagrams to illustrate the static deployment view of architecture. Deployment diagrams are related to component diagrams in that a node typically encloses one or more components. 2.3.2 Behavioral Diagrams 2.3.2.1 Use Case Diagram A use case diagrams shows a set of use cases and actors and their relationships. One will apply use case diagrams to illustrate the static use case view of a system. Use case diagrams are especially important in organizing and modeling the behaviors of a system. 2.3.2.2 Sequence Diagram A sequence diagram is an interaction diagram that emphasizes the time ordering of messages. A sequence diagram shows a set of objects and the messages sent and received by those objects. The objects are typically named 10