UNIVERSITY OF OSLO RESEARCH PROPOSAL FOR THE MASTERS OF SCIENCE IN INFORMATICS DEGREE BY COURSE WORK AND DISSERTATION 1.0. NAME OF CANDIDATE: LUNGO, JUMA H. Reg.No: 17117431320 B.Sc. (Comp.) (Hons.) (DAR) 2.0. NAME OF SUPERVISOR: 3.0. DEPARTMENT AND FACULTY: DEPARTMENT OF INFORMATICS – FACULTY OF MATHEMATICS AND NATURAL SCIENCE. 4.0. PROPOSED DEGREE: M. Sc. (INFORMATIC SCIENCE) 5.0. TITLE: Object-Oriented Systems Analysis and Design: a case of District Health Information System, Mozambique. TABLE OF CONTENTS ABSTRACT ................................................................................................... i INTRODUCTION .......................................................................................... 1 RELEVANT FINDINGS (LITERATURE REVIEW) ............................................ 2 OBJECT-ORIENTED SYSTEMS ANALYSIS AND DESIGN ............................................... 2 THE RESEARCH PROBLEM AND WHY THIS PROBLEM AREA ..................... 5 THE RESEARCH QUESTIONS ..................................................................... 5 RESEARCH OBJECTIVES ........................................................................... 6 TARGET GROUP ......................................................................................... 7 PERSONAL MOTIVATION ............................................................................ 7 METHODOLOGY ......................................................................................... 7 BIBLIOGRAPHY: ........................................................................................ 13 i ABSTRACT Many organisations are relying on software systems. Thus these organisations spend a lot of money on software systems and, to get a return on that investment, the software must be usable for a number of years. For many organisations, introducing new software implementation from scratch is a risk. This is because their requirements are not well defined or they don’t have enough expertise to understand and identifies software that can fit their problems. So, many organisations adopt software. That means they take analogy software (software developed for another organisation with the some similarities) and adopt it to fit their needs. In my research, I want to address the problems of adopting systems developed in the functional-oriented methodology and propose objectoriented systems analysis and design methodology. Mainly I would like to assess the flexibility of the structure of software and the development and implementation platforms to be adapted to new environments different from where it was developed. I am intending to improve the situation of systems analysis and design in the context Mozambique. My research questions are: What are the problems of adapting software developed in functional – oriented implementation methodology? Why there is a need of applying object-oriented systems analysis and design in software development? How we can we carry object-oriented systems analysis and design? My case of study is the District Health Information Software (DHIS). It is software developed in functional-oriented method of implementation and is a platform dependent. The justification of choosing this is that the ii software was developed for South Africa Health Information System and now is adopted by Mozambique Health Information System. I will approach the problem by studying and understanding how the software works, studying the software adaptation in Mozambique and trying to translate the software in Object-Oriented systems analysis and design. The study will be executed by using qualitative research method and action research methods. The main objectives of the research are to develop platform independent software and advice addition of some features not exists in the system. A software prototype model is the expected outcome and the analysis, design and implementation documents will be the most useful results of the research. Thus, what we can achieve is a less dependent of platform software and additional functionality of the system like web functionality. 1 INTRODUCTION This research follows under the area of information systems development. The study is about systems analysis and design using object-oriented methodology. Information systems are everywhere. Business and government rely heavily on information system to support their mission and goals (Norman, 1996). A system is a set of interrelated components, working together for a common purpose. There are two types of systems: natural and fabricated. Natural systems include the human body, the solar system, etc. Fabricated systems are created by people to satisfy some purpose that they have. Philosophically speaking, fabricated systems should save you, not the other way around (Norman, 1996). A generic systems model consists of six components: inputs, processes, outputs, control, feedback, and boundary. Using predetermined controls, a system accepts inputs at its boundary, processes them into outputs and provides a feedback mechanism for taking any necessary corrective action. The last component, boundary, is the perimeter of the system. It can also be thought of as the scope of the system. An information system is a type of fabricated system that is used by one or more persons to help accomplish a task or assignment. Information systems are established to support policies and or procedures (Norman, 1996). In addition to having the six general systems components, an information system has three additional components: people, procedures, and data (Norman, 1996). When one of your relative changes her 2 address, you have a procedure for providing new data to replace the absolute data in your address book. An automated information system is an information system that incorporates the use of computer’s hardware and software as part of the system. In this research document, I will be dealing with automated information systems. For simplicity, I will omit the word automated and refer to all automated information systems merely as information systems. Most of large companies developing software are using the latest methodology of developing information systems. The methodology is object-oriented analysis and design. However this methodology is not applied by all system developers. There are many valuable systems developed in the old methodology and for some reasons, they need to be updated, maintained and per haps to be transformed into Objectoriented systems. This research is intended to be a short introduction to new information systems development techniques and how these systems developed not in object-oriented methodology could be translated into object-oriented systems. RELEVANT FINDINGS (LITERATURE REVIEW) Object-Oriented Systems Analysis and Design Over the last forty (40) years of information systems development, four general methodology classifications have been evolved: traditional, structured, information modelling and object-oriented (Norman, 1996). Methodology is the way something is done in systems analysis and design. 3 The earlier methodologies; traditional, structured and information modelling, are characterised as “Function-Oriented Programming”. The main features were ‘Data-flow design’ where the data processing in the system were modelled using data-flow diagrams, ‘structured decomposition’ where functions are decomposed to sub-functions using graphical structure charts and detailed design where the entities in the design may be recorded in a data dictionary and the design expressed using a programming definition language (PDL). According to Jens Kaasbøl (1996), “the hard core of object-orientation consist of the following: encapsulated objects with properties and behaviour, classes of objects, and inheritance of general properties and behaviour to specialized classes” (3). And Nygaard (1996) said “In objectoriented programming, an information process is regarded as a system developing through transformation of its state. The substance of the process is organised as the system components, called objects. A measurable property of the substance is a property of an object. Transformation of state is regarded as actions by objects.” Mathiasen et el. (2000) gave the following description “In many traditional Analysis and design methods, functions, data, and data flows are the key concepts”(5). The concepts are suitable for describing phenomena in offices and computerized systems. Objects, states, and behavior on the other hand, are more general concepts and are suitable for describing most phenomena that can be expressed in natural language. Object-oriented programming (OOP) and object-oriented design (OOD) refer to a particular way of organizing programs, one which is rapidly emerging as the preferred approach for building complex software 4 systems (Morelli, R, 2000 pg. 5). Sommerville (2001) gave the following definitions: Object-oriented analysis is concerned with developing an objectoriented model of the application domain. The identified objects reflect entities and operations that are associated with the problem to be solved. Object-oriented design is concerned with developing an objectoriented model of a software system to implement the identified requirements. Object oriented programming is concerned with realizing a software design using an object oriented programming language. Objects can model social, economic, and organizational conditions, as well as the systems’ interfaces, functions and components. The Case of Study (DHIS) There are many systems developed in the “functional-oriented design strategy” as a result it costs a lot in maintaining these systems. If one organization would like to adapt software by making small changes, these changes may affect the whole system and probably can’t work until every part of the system is touched. The research will take District Health Information System (DHIS) of the Health Information System Project (HISP) as an example of an information system developed in functional-oriented design strategy and try to make attempt of transforming that system into object-oriented analysis and design. DHISP is a health and management information systems project running in South Africa. It is a collaborative research and development program comprising the University of Western Cape, the University of Cape Town (both in South Africa), the University of Oslo (Norway) and National department and Ministry of Health of South Africa and Mozambique 5 respectively. The government of Mozambique through its Ministry of Health decided that Mozambique should try to adapt an information system developed in South Africa for district health administration, and the donors would fund adaptation and pilot installation in three districts. THE RESEARCH PROBLEM AND WHY THIS PROBLEM AREA In developed countries, information systems developments are more advanced than in developing countries. As a result developing countries used to adapt systems developed from different context. Since some systems may have developed according to certain environment, they can’t be adapted as they are, until some changes are applied to those systems to fit the new environment. Mozambique is adapting DHIS software developed in South Africa. The context of Mozambique is quite different from that of South Africa therefore some changes of the DHIS are must to fit the Mozambique context. This research will be carried out in Mozambique where Health information Systems is in its infant stage of implementations. The research will reveal aspects that will assist in current and future projects of implementing information systems in developing countries by adapting existing systems. In particular the result of this study will be useful and assist the ongoing implementation of DHIS in Mozambique. This may cut costs and efforts of implementing the system in Mozambique and anywhere else in the future. THE RESEARCH QUESTIONS The research will be conducted in Mozambique that is not much advanced in information systems development. The idea is to come with a simple model, which could be used as sample of translating an 6 information system developed using the function-oriented design strategies into object-oriented analysis and design. In my research, I want to address the problems of adopting systems developed in the functional-oriented methodology and propose objectoriented systems analysis and design methodology. Mainly I would like to assess the flexibility of the structure of software (software architecture) and the development and implementation platforms to be adapted to new environments different from where it was developed. What are the problems of adapting software developed in functional – oriented implementation methodology? Why there is a need of applying object-oriented systems analysis and design in software development? How we can we carry object-oriented systems analysis and design? RESEARCH OBJECTIVES This research is for academic purposes. The thesis document will be submitted to the University of Oslo, for partial fulfillment of the degree of M. Sc in information systems. The general aim is to study Object – Oriented Systems Analysis and Design Methodology by applying Unified Modeling Language (UML) and Java Techniques. The proposed research objectives, derived from this general aim are: To develop an information system that can run in different hardware and software platforms. To develop information system that has common documentations that can be understood by many programmers so that they can change the system in the need of adapting the system when implemented in different environments. 7 TARGET GROUP The research is targeted to masters students, software development experts especially those interested on using UML and Java techniques in modelling systems. Other group is the University of Oslo Systems Development Group members since this research will be conducted under their project called DHISP in Mozambique. PERSONAL MOTIVATION My background is from Computer Science. I have majored in computer science and mathematics courses when pursuing my first degree. My expertise is in designing and implementation of Database System and WebPages. I am also good in programming using Microsoft Visual Basic, Pascal Language and HTML. I am also good in designing databases in Microsoft SQL Server and Microsoft Access Relational Database Systems. I have accustomed to structured method of systems analysis and design. Being studying object-oriented systems analysis and design in the course of software engineering (IN219) at the department of Informatics, has motivated me to conduct my thesis in software systems development and in particular, object-oriented systems analysis and design. I hope the UML and Java techniques I have acquired in this course will be helpful in my research. On top of this, I am so interested in health care information systems; they are systems becoming more reliant in computer information systems and more research is required in order to develop more quality and reliable software systems. METHODOLOGY Research Methods The methods to be used in this study are qualitative research methods and action research method. 8 Setting This study will be conducted at the University of Eduardo Mondlane University, Mozambique. The university has staff involving actively in the process of designing and implementation of the District Health Information System in Mozambique. A visit may be arranged to South Africa where the DHIS software has been developed and implemented at large so that the researcher my conduct participant observation data collection technique. Gaining Entry A formal communications with the system developers has already established. However there is a need of gaining access to the setting and being granted permission to conduct the evaluation and translation of the system. This will help to shape the researcher’s relationship with the participants in the study and, consequently, affects the nature of the entire study. To address ethical concerns, the researcher and the organizers of the research (University of Oslo systems development group members) will carry effort to the extent possible, so that all participants in the setting being involved in the study should be brought into the negotiation process. Data Collection The most important principal of qualitative data collection is that every thing is potential data (Anderson et al, 1994). The researcher is the instrument for collecting and analyzing data. In this study, there will be three main sources of data: a) Participant observations Observation in qualitative studies produces detailed descriptive accounts of what was going on (including verbal interaction). In my research I will arrange to visit the setting and have discussions and actively participate 9 in the system development. This will make me learn in details about the DHIS system rather than depending on reports produced by the system developers. b) Open-ended interviews and survey questions According to Anderson (1996), there are two distinct features of openended interviewing. First, the goal is to elicit the respondent’s views and experiences in his or her own terms, rather than to collect data that are simply a choice among pre-established response categories. Second, the interview is not bound to a rigid interview format or set of questions. Both features will be used but in different groups. The first will be used when the researcher interview the DHIS system developers while the second feature will be used when the interviewer as a system user or IT personnel to maintain the system. I will use this method because I want to find out how the system was developed, what are the functions of the systems and the problems faced (if any) during the adaptations of the system in Mozambique. For large group of respondents, an open-ended survey questions will be used as alternative to open-ended interview. A survey or questionnaire is the primary data collection method within survey research (Kraemer, 1991). Thus, I will design a questionnaire and include all questions to be asked during the interview. c) Documents and texts. Documents and texts also can be valued source of data. In this research a high concentration will be emphasized on reading the original documents: published research papers; conference reports; memoirs and emails of individuals who developed the system; presentation papers and user manual of the DHIS. The DHIS software itself will be treated as text 10 and the data generated by the software are of important documents in this research. Qualitative studies generally collect data by using several of these methods to give a wide range of coverage (Bonoma, 1985). Data Analysis The purpose of data analysis is to develop an understanding or interpretation that answers the basic question of”what is going on here?” Agar (1980, p.9) describes that qualitative data collection and analysis have an inductive, cyclic character: ”You learn something (”collect some data”), then you try to make sense out of it (”analysis”), then you go back and see if the interpretation makes sense in light of new experience (”collect more data”), then you refine your interpretation (”more analysis”), and so on”. Thus the process is dialectic, not linear. This is like spiral model of software development, because with spiral model, the processes of developing software are represented as a spiral. Each loop in the spiral represents a phase of the software process and as you go out of the spiral the processes are growing. Data Analysis Techniques Coding Coding in qualitative research, involve segmenting the data into units (Hammersley & Atkinson, 1983, p.167) and rearranging them into categories that facilitate insight, comparison, and the development of theory (Strauss & Corbin, 1990). Analytic Memos Writing is an important analysis technique and should begin early in the study, perhaps even before starting the study (Wolcott, 1990). By definition, an analytic memo is any thing that a researcher writes in relationship transcription. to the research, other than direct field notes or In this study, writings will be continuously taken, to 11 elaborate why it happens in this and that way. This will be part and parcel of analysis part of the study. Contextual and Narrative Analysis Some time it is not possible to code all texts as described in (7.5.1.1) above. Contextual and narrative analysis has developed as an alternative to coding. Instead of segmenting the data into discrete elements and resorting them into categories, these approaches to analysis seek to understand the relationships between elements in particular text, situation, or sequence of events (Kaplan & Dorsey, 1991; Maxwell & Miller, n.d.). In my study those data to be collected using an open-ended interviews and survey questions will be analyzed by coding techniques. However, data to be collected by participant observation techniques and interactions will be analyzed by contextual and narrative analysis techniques. Evaluation Report In my research I am going to study how users have perceived the system. In that case I will give an evaluation report on the usability of the software and the reliability of the software. The techniques to be used include the interviews and questionnaires and observations. This will come after studying and understanding the design techniques used to develop and adapt the software. Then I can relate this technique with the results to be obtained from the evaluation report. 12 Tools to be used UML and Java Technique. The data analysis techniques mentioned above will be useful in collecting user requirements and getting suggestions from DHIS systems developer according to their experience. After collecting this data, the system analysis and design will follow in order to develop the system prototype. As I said, I will use object-oriented techniques plus general techniques of developing software I learnt in the course of software engineering (IN219). This part of my research will be accomplished by testing the system prototype and make an evaluation report in comparison with the existing DHIS system. 13 BIBLIOGRAPHY: 1. Agar, M. H. (1980). The professional stranger: An informal introduction to ethnography. New York: Academic Press. 2. Anderson, J.G., Aydin, C. E., & Jay, S. J. (1994). Evaluating Health Care Information Systems: Methods and Applications. USA, Sage publications, Inc. 3. Beck, K & Cunningham (October, 1989), p.1-6. A laboratory for teaching Object Oriented thinking, I OOPSLA ’89 Proceedings, ACM. 4. Bonoma, T. V. (1985). Care research in marketing: Opportunities, problems, and a process. Journal of Marketing Research, 22, p. 199-208. 5. Booch, G (1991). Object Oriented Design with Applications. Redwood City, Calif.: Benjamin/Cummings. 6. Braa, J. and Hedberg, C. (2000) Developing district-based health care information Information systems: flows, Local the South Improvisations African and experience. Work In Practices. Conference Proceedings. IFIP WG 9.4, South Africa 7. Coad, P & Yourdon, E (1989). Object-Oriented Analysis. Englewood Cliffs, N.J.: Yourdon Press. 8. Ehn, P. 1993. Scandinavian design: On participation and skill participatory design. Principles and practices. Lawrens, Erbaum Associates, p 41-47 9. Fowler, M. & Scott, K. (2000). UML Distilled: Abrief Guide to the Standard Object Modeling Language (2nd ed.). USA, Addison Wesley. 10. Graham, I (1991). Object Oriented Methods. London, Addison Wesley. 11. Hammersley, M., & Atkinson, P. (1989). Ethnography: Principles in practice. London: Tavistock. 14 12. Kaasbøll, J. J. (1996). Aspects of object-oriented modelling: concepts for analysis and guidelines for design. Oslo, University of Oslo, Faculty of Mathematics and Natural Sciences, Department of Informatics. 13. Kaplan, B., & Dorsey, P. (1991). Requirements Analysis interviewing: alternative perspectives. Technical Report 91-021. Washington, D.C.: The American University, Department of Computer Science and Information Systems. 14. Kraemer, K. L., & Dutton, W. H. (1991). Survey research in the study of management information systems. In K. L. Kraemer (ed.), The information systems research challenge: Survey research methods (pp. 3-57). Boston, MA: Harvard Business School. 15. Lunde, T. (August 1997). Tacit knowledge and system development: Linking social and individual ways of thinking. University of Oslo, Norway. 16. Mathiassen, L., Munk, A., Nielsen, P.A.& Stage, J. (2000). Object Oriented Analysis & Design. Marko Publishing APS, Denmark. 17. Maxwell, J., & Miller, B. (n.d.). Two aspects of thought and two components of qualitative data analysis. Unpublished manuscript. 18. Morelli, R. (2000). Java, Java, Java: Object Oriented Problem Solving. Prentice-Hall, Inc. USA 19. Premerlani, W (Feb. 1992). Object Oriented Modelling and Design. I: LOOK’92, København, Danmark. 20. Rumbaugh, J., Blaha, M., Premerlani W., Eddy F, & Lorensen W (1991). Object Oriented Modelling and design. Englewood Cliffs, N.J.: Prentice – Hall. 21. Sommerville, I. (2001). Software Engineering (6th ed.). USA, Addison Wesley. 15 22. Strauss, A., & Corbin, J. (1990). Basics of qualitative research: Grounded theory procedures and techniques. Newbury Park, CA: Sage. 23. Wolcott, H. (1990). Writing up qualitative research. Newbury Park, CA: Sage. 9.0 OTHER INFORMNATION The following software will be required: TAU UML software JAVA compiler (any Java IDE Java Integrated Development Environment e.g. Jbuilder 5.0) Relational Database System eg. SQL Server or M. S. Access 16 10.0 RESEARCH SCHEDULE 2001/2002 ACTIVITY Aug Registration, literature review, Research Proposal. Literature review, Data collection and Analysis. Analysis design of DHIS, implementat ion testing and evaluation Thesis write-up, delivering, presenting & defending.. Sep. Oct. Nov. Dec. Jan. Feb. 2002/2003 Mar Apr. May Jun. Jul. Aug Sep. Oct. Nov. Dec. Jan. Feb. Mar Apr May