Object-Oriented Systems Analysis and Design

advertisement
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
Download