Website: http://www.uzulu.ac.za
Private Bag X1001
3886 KwaDlangezwa
Subject: Information Systems Management 3.B
Subject Code: CMIS302/322
Programme:
National Higher Degree: B.Com (MIS)
NQF level: 7
Credits: 16
Notional Hours: 160
Component: Fundamental
Information Systems Management 3.B [Learner guide] - 2014
3.
4.
1.
2.
INTRODUCTION
PURPOSE OF THE PROGRAMME
PURPOSE OF THE LEARNER GUIDE
SYLLABUS
5.
7.
9.
App 1
LITERATURE
GENERAL GUIDELINES
UNITS
OO PRINCIPLES
App 2 AMORTIZATION and EXCEL
App 3 PROJECT MANAGEMENT
PAGE
35-
36
3
3
4
4-5
6
7
8-
12
11-
20
21-
34
2
Information Systems Management 3.B [Learner guide] - 2014
Welcome as learners, to the Information Systems course: Analysis and Design of IS . This is a continuation of CMIS301/111, where we introduced the topics of analysis.
We would like to invite you to use the lecturer as facilitator to develop your knowledge in this subject to the maximum. In order to attain success in this subject, your own contribution is important. It is important that you realize that it is your responsibility to prepare for classes and to initiate class discussions. If your attitude towards your study is correct, it will lead to enthusiasm and success will inevitably await you in your future career!
“The difference between “theory” and “practice” is that in theory there is no difference between theory and practice, but in practice, there is.” Prof. Van De Snepscheut, Caltech.
So CMIS302 really just builds on CMIS301/311, where we substantiate the theory with MS
Visio. On the one hand it was the traditional approach to SD (CMIS301) and on the other hand we used object oriented approach with UML. Now CMIS302 will follow the same methodology. MS Visio will still play a cardinal role in our development.
In essence this semester course consists of two units: unit 1 (OO approach) has to do with o Design activities, focusing on the environment and user/system interfaces o System development, using the SDLC and agile development o Project management o Object Oriented design principles and use case realization
And unit 2 (traditional approach) we analyze the transaction cycles o Revenue, expenditure and conversion o Financial reporting and management reporting systems
These two units are very complementary, and skills developed in unit 1, will assist in understanding unit 2!
This program is intended for business students, and no previous knowledge of programming is required. This program is a hands-on approach following the case study of RMO and also an in-class project of a library system, applying all the knowledge gain in CMIS301/311.
This idea of learning by doing has long been recognized as an optimal form of education.
The key is to engage the brain with practical tasks! So the course is really driven by an old model: KIT. This acronym stands for K nowledge, I nsight and T echnology. Knowledge was mainly gain in CMIS301/311, and the focus shifts now to Insight and Technology.
Another focus point will be team building! Meaning students will perform tasks, exercises and projects in teams. It is most important that students get experience working in teams, building an information system. In the real world, information systems are almost invariably developed by teams, and I believe that we shortchange our students if we do not give them this experience. The size of the team is critical, but from an academic point we can only allow a team to consist of two students, maximum three students .
3
Information Systems Management 3.B [Learner guide] - 2014
This learning guide serves as an instrument of preparation for the learner. It enables you to plan your studies and to follow the completion of the curriculum framework. For the theory component it goes without say the student has to do the Review Questions at the end of each chapter. Time will be spent on the Problem and Exercises.
The content of this learning guide must not be regarded as complete. The accumulation of knowledge and insight, as well as the achievement of specific goals, is the learner’s primary responsibility. The learning process will be facilitated within the academic framework with the learning outcomes. The learner should therefore know which learning outcomes must be achieved after each session and what the learner will have to give account of at the end of the module.
A summary of the work to be done is as follows:
Unit 1 Chapters 6, 7, 8, 9, 10 & 11
Unit 2
Unit 3
Chapters 4, 5, 6, 7 & 8
MS Visio
4.1. CONTENT
The content of the instructional offering is summarized as follows:
Theory o Design activities, focusing on the environment and user/system interfaces o System development, using the SDLC and agile development o Project management o Object Oriented design principles and use case realization o Revenue, expenditure and conversion o Financial reporting and management reporting systems
Practical o MS Visio: drawing diagrams for all the UML models o MS Project: Gant – and Pert-Charts
4
Information Systems Management 3.B [Learner guide] - 2014
4.2. LEARNER OUTCOMES
After working through and studying this module the learner should be able to:
Terminology . The student will be able to explain the meaning of terms used to describe common techniques and concepts in information system analysis and design.
Skill . The student will successfully use MS Visio in the design of systems.
Advanced Information Systems Concepts . The student will be able to describe the system requirements in the latest UML language, applying OO concepts. These concepts include use cases, event decomposition, domain and class models, activity diagrams and system sequence diagrams. Client/server and three layer design architecture concepts will be developed.
Systems Development . The students will be involved in a small ‐ scale class development project and gain experience working in teams.
Behavioral and Organizational Issues . The student will be able to identify and suggest appropriate responses to managerial and organizational issues stemming from development, implementation, and use of computer ‐ based ISs.
International Issues . The student will recognize the reality of implementing international ISs, including economic and cultural differences.
Social and Ethical Issues . The student will understand the major social and ethical issues involved in the development and use of information technology.
4.3. CRITICAL CROSS-FIELD LEARNING OUTCOMES
The critical outcomes state that learners will be able to:
Identify and solve problems and make decisions using critical and creative thinking
(problem-solving skills).
Work effectively with others as members of a team, group organization and community
(team-ship).
Organize and manage themselves and their activities responsibly and effectively (selfresponsibility skills).
Collect, analyses, organize and critically evaluate information (information processing/research skills).
Communicate effectively using visual, symbolic and/or language skills in various modes
(communication skills).
5
Information Systems Management 3.B [Learner guide] - 2014
Use science and technology effectively and critically, showing responsibility towards the environment and the health of others (technological and environmental literacy and responsibility).
5.1. PRESCRIBED
Unit 1
JW Satzinger, RB Jackson and SD Burd, Object-Oriented Analysis & Design with the
Unified Process (ISBN 0619216433)
J Arlow and I Neustadt, UML 2 and the Unified Process , 2nd Edition (ISBN 0321321278)
Unit 2
JA Hall, Introduction to Accounting Information Systems (ISBN 9781439078785)
5.2. ADDITIONAL READING
D Rosenberg and M Stephens, Use Case Driven Object Modeling with UML Theory and
Practise (ISBN 9781590597743)
5.3. COPYRIGHT AND PLAGIARISM
If you should make any copies of the prescribed textbook, you can be found guilty of a criminal offense and a fine or imprisonment can be imposed. The Faculty does not take any responsibility in this regard.
If copies of the textbook must be made, written permission must be obtained from the publishers of the book.
The assessment criteria must arise from, and be linked to, the intended outcomes. You as students will be informed about the way in which you will be assessed. This means that you will be told what knowledge, skills and attitudes need to be acquired in order to achieve the outcomes.
While preparing for assessments, you must ensure that you meet all the outcomes and assessment criteria as stated in each learning unit.
6.1. FORMATIVE ASSESSMENT
Formative Assessment takes place during the process of teaching and learning with the purpose of developing the learners’ abilities. Formative Assessment will occur in the form of formal tests and assignments given by your lecturer. Formal tests and assignments will
6
Information Systems Management 3.B [Learner guide] - 2014 account for 40 % of your final mark.
The test will be written during normal class time and the venue will be the same as normal class venue
Any test missed will count as a zero unless a valid medical certificate or reason is handed to your lecturer as soon as possible. A sick test will be written in such cases at the discretion of the lecturer.
6.2 SUMMATIVE ASSESSMENT (FINAL EXAMINATION)
Summative assessment is undertaken to make judgment about the learners’ achievement and is carried out at the end of the learning programme. A three hour examination will be written at the end of each semester on the work done during the semester. The summative assessment will account for 60 % of your final mark at the end of the semester . A final pass of 50 % is required to pass this module.
The relevant assessment criteria for this module are as follows:
FORMATIVE ASSESSMENTS
Assessment 1 20%
Assessment 2 20%
SUMMATIVE ASSESSMENT 60%
Total 100%
7.1. CLASS ATTENDANCE
Class attendance is of the utmost importance in this subject. The practical application of theory is constantly done through a variety of class activities. Important announcements are made during the class and important guidelines are provided on how to start and complete homework and assignments.
STAYING AWAY FROM CLASS IS A GUARANTEED RECIPE FOR FAILURE.
Should you fail to attend class, it will be your responsibility to obtain relevant information from fellow learners.
BE PUNCTUAL FOR CLASS – BEING LATE IS A DEFINITE CHARACTERISTIC OF
AN IRRESPONSIBLE INDIVIDUAL.
7.2. CONSULTATION OF COURSE FACILITATOR
COURSE FACILITATOR:
MR B.F. NEL
OFFICE NO D210
Email: nelb@unizulu.ac.za
PHONE: (035) 9026187
Consulting Time: Monday 09h30 – 12h00; Tuesday 09h30 – 12h00
7
Information Systems Management 3.B [Learner guide] - 2014
7.3. SCOPE OF WORK FOR ASSESSMENT PURPOSES
You are required to study all the work as set out in this learning guide.
7.4 ASSESSMENT DATES
Assignments, tests and examination dates will be supplied by the lecturer and can be filled in by the student in the space provided below:
Assessment: Date:
Assignment 1
Assignment 2
Examination
7.5 ASSESSMENT METHOD
This will be discussed in class, but it will follow the examples we did in class. NO surprises.
Chapter 6:
Essentials of Design and the Design Activities
So far, CMIS311, the discussion was about system analysis, or ‘understanding the user’s requirements’, now we shift to design or ‘the solution’ . In this chapter the discussion is briefly about the environment, one of the first design activities.
This chapter will focus on:
The elements of design
Inputs and Outputs for Systems Design
Design activities
Design the Environment
Specific Outcomes :
At the end of this chapter you will
1.
Describe the difference between system analysis and design
2.
Explain each major design activity
3.
Describe the major hardware and network environment options
4.
Describe the various hosting services available
Chapter 7:
Designing the user and system Interface
This chapter addresses two types of system interfaces: user interfaces and system interfaces. User interfaces are those inputs and outputs that involve a user to enter or review information. System inputs and outputs are either those that go directly to another system without any user involvement, or those that only minimally involve users. For example, the printing and mailing of customer bills is considered a system output because even
8
Information Systems Management 3.B [Learner guide] - 2014 though it is eventually going to a person, the printing, folding, and mailing is primarily done as part of an automated process.
User-centered design is an important concept that is addressed early in the chapter. There are various metaphors of how a user accesses and interacts with an automated system. Considering these metaphors assists analysts to define and describe the user interface more effectively. Such metaphors as direct manipulation metaphor, desktop metaphor, document metaphor, and dialog metaphor all describe the user interface in slightly different terms and help in understanding and specifying an effective user interface.
This chapter will focus on:
User and system interfaces
Understanding the user interface
User-interface design concepts
The transition from analysis to user-interface design
User-interface design
Identifying system interfaces, inputs and outputs.
Specific Outcomes :
After reading this chapter, the student should be able to:
1.
Describe the difference between user interfaces and system interfaces
2.
Describe the historical development of the field of human-computer interaction (HCI)
3.
Discuss how visibility and affordance affect usability
4.
Describe user-interface guidelines that apply to all types of user-interface types and additional guidelines specific to Web pages and mobile applications
5.
Create storyboards to show the sequence of forms used in a dialog
6.
Discuss examples of system interfaces found in information systems
7.
Define system inputs and outputs based on the requirements of the application program
8.
Design printed and on-screen reports appropriate for recipients
Chapter 8:
Approaches to System Development
There are two closely related yet independent concepts in this chapter. The first important concept is that there are two types of Systems Development Life Cycle approaches—a predictive approach and an adaptive approach. The second important concept is that there are two types of development methodologies—a structured approach and an object-oriented approach. These are two separate concepts. Projects can be any mix of these two approaches, the approach to the life cycle and the approach to the methodology—predictive with structured, predictive with object-oriented, adaptive with structured, or adaptive with object-oriented.
The chapter first presents and explains the differences in the life cycle approach—the predictive and the adaptive approaches. These two approaches are really a continuum and any give project may have elements of both approaches. The predictive approach to the SDLC is used for projects that are well understood and low risk. The adaptive approach to the SDLC is used for projects that are not well understood and are higher risk.
Adaptive SDLCs are more iterative and allow the project team to adapt the project to changing circumstances.
Finally the chapter concludes with a discussion of the Agile philosophy and Agile modeling principles. Students should understand that Agile philosophy recognizes that most users do not understand the complexities of business processes and supporting software and therefore most projects must be flexible and agile. Agile modeling has basic principles to encourage developers to use modeling as a means to the end product (working software), and not an end in and of itself.
This chapter will focus on:
The system development life cycle
The support phase
Methodologies, Models, Tools and Techniques
Two approaches to software construction and modeling
Agile development
9
Information Systems Management 3.B [Learner guide] - 2014
Specific Outcomes :
At the end of this chapter you will
1.
Compare the underlying assumptions and uses of a predictive and an adaptive system development life cycle (SDLC)
2.
Describe the key activities and tasks of information system support
3.
Explain what comprises a system development methodology—the SDLC as well as models, tools, and techniques
4.
Describe the two overall approaches used for software construction and modeling: the structured approach and the object-oriented approach
5.
Describe the key features of Agile development
Chapter 9:
Project planning and project management
This chapter has three major themes.
A review of basic project management principles and the PMBOK
A discussion of the activities of Core Process one: Identify the problem and obtain approval
A discussion of the activities of Core Process two: Plan and monitor the project
Project management can be taught in two different ways, either from a conceptual point of view, or from a list of skills and activities point of view. The first section on the principles of project management, as well as the discussion of the PMBOK in Online Chapter C, present a conceptual foundation of project management principles.
Skills and activities are taught through explanations of the first two Core Processes.
This chapter will focus on:
Principles of project management
Activities of core process 1: Identify the problem and obtain approval
Activities of core process 2: Plan and monitor the project
Specific Outcomes :
At the end of this chapter you will
1.
Describe the factors that cause a software development project to succeed or fail
2.
Describe the responsibilities of a project manager
3.
Describe the knowledge areas in the project management body of knowledge (PMBOK)
4.
Describe the Agile approach to the project management knowledge areas
5.
Explain the activities required to get a project approved (Core Process 1)
6.
Explain the activities required to plan and monitor a project (Core Process 2)
Chapter 10:
Object-Oriented Design: Principles
First the basic idea of what object-oriented design is and why it is useful is introduced. The second topic within the chapter teaches architectural or high-level design. The later part of the chapter introduces and teaches concepts related to detailed design. After introducing the concepts of design, the chapter teaches about design class diagrams.
A method of actually doing detailed design is presented via the concepts of Class-Responsibility-Collaboration or CRC cards. The use of CRC cards is a popular method of doing detailed design, and works quite well for simple systems. The chapter ends with a discussion of principles that determine whether a detailed design is
“good” according to metrics of design quality.
This chapter will focus on:
Object-Oriented design: bridging from analysis to implementation
OO architectural design
Fundamental principles of OO detail design
Design classes and the design class diagram
Detail design with CRC cards
Fundamental detailed design principles
10
Information Systems Management 3.B [Learner guide] - 2014
Specific Outcomes :
At the end of this chapter you will
1.
Explain the purpose and objectives of object-oriented design
2.
Develop UML component diagrams
3.
Develop design class diagrams
4.
Use CRC cards to define class responsibilities and collaborations
5.
Explain some of the fundamental principles of object-oriented design
Chapter 11:
Object-Oriented Design: Use Case Realization
The purpose of this chapter is to provide in-depth knowledge and skills on how to do low-level design of complex systems.
The primary focus of this chapter is on developing detailed object-oriented design models, which programmers then use to code the system. The two most important models that must be developed are design class diagrams and interaction diagrams, either sequence diagrams or communication diagrams.
Design class diagrams are developed for each layer (domain, view, and data access) of three-layer design to extend the domain model that was developed during analysis.
Interaction diagrams extend the system sequence diagrams, also developed during analysis. This chapter also discusses how to associate classes into package diagrams to show relationships and dependencies.
Finally, the chapter presents principles of good design as defined by design templates or design patterns.
Design patterns is an important topic and a broad area – especially for those that begin their careers as programmers. Most of the development frameworks, e.g. Struts for Java, Zend for PHP, Visual Studio for .NET, are based on the Model-View-Controller (MVC) pattern
This chapter will focus on:
Detailed design of multilayer systems
Use case realization with sequence diagrams
Designing with communication diagrams
Updating and packing the design classes
Design patterns
Specific Outcomes :
At the end of this chapter you will
1.
Explain the different types of objects and layers in a design
2.
Develop sequence diagrams for use case realization
3.
Develop communication diagrams for detailed design
4.
Develop updated design class diagrams
5.
Develop multilayer subsystem packages
6.
Explain design patterns and recognize various specific patterns
A detail discussion is unnecessary here; each chapter of the text book has a very good introductory explanation. To repeat it here does not make sense
Chapter 4, 5, 6
We hope the student will gain a solid understanding of the business tasks in each cycle and the awareness of how different technologies influence changes in the operation and control of the systems.
First the business cycle is reviewed conceptually using DFD. Each system is examined under automation. Then each system is reengineered to incorporate real-time technology
11
Information Systems Management 3.B [Learner guide] - 2014
Chapter 7
The discussion is around the technologies and techniques used in supporting the two manufacturing environments: traditional mass production and lean manufacturing. These are driven by MRP, MRP II and ERP
Chapter 8
It focuses on the GLS and on the files that constitute a GLS database
It also examined how information is provided to both external and internal users, especially with XBRL. MRS will also be discussed.
MS Visio will be used extensively in most of the above chapters
Special Topic: The REA approach to database Modeling
A summary of the work to be done is as follows:
Week Theory
2 Unit 1 : Chapter 6
5
6
3
4
7
8
9
Chapter 7
Chapter 8
Chapter 9
Chapter 10
Chapter 11
Assessment
Unit 2: Chapter 4, 5
10
11
Chapter 6
Chapter 7
12
13
Chapter 8
Assessment
Notional Hours:
Contact Sessions: 52 Hours=30 Hrs (Formal lectures) + 22 Hrs Tuts
Assignments: 44 Hours (±4 hours per chapter)
Project: 6 Hours
Theory Tests Preparation: 52 Hours (=contact sessions: 2x26Hrs)
Assessments: 6 Hours
Total: 160 Hours
*****I sincerely hope you enjoyed the course, and best of luck for the future*****
12
Information Systems Management 3.B [Learner guide] - 2014
Appendix 1: OO Principles
History (Really ….history. See bibliography page 20. But I found they explain OO concepts very well!)
TSD or traditional systems development paradigm analyzes a system to identify the functions it must perform. Functional decomposition is the process of identifying the major activities of a system, and then breaking it into composite steps: (I hope CMIS301 comes to mind!)
Process duty payments o Verify shipment receipt o Determine shipment product category o Calculate import duty etc.
Emphasizing the processes or functions that a system performs, functional decomposition is the underlying framework. This paradigm is embedded in Yourdon’s [1979] and deMacro’s [1979]
Structured System’s Analysis and Design (SSA&D) and Martin’s [1990] Information Engineering (IE).
OS&BA or object structure and behavior analysis, a system is decomposed into objects. This paradigm emphasizes the things that comprise the system and how these things act and interrelate.
Next an object model is created, describing each class in terms of its attributes, methods, and relationships to other classes. This specification of object classes is the foundation of object-
oriented systems development (OOSD) paradigm. Booch [1993], Coad and Yourdon [1990, 1991].
Martin and Odell [1992], Rumbaugh [1991], and Schlaer and Mellor [1989], among others, have proposed methods to guide systems development under this new paradigm.
These two paradigms adopt different perspectives to decompose a system. TSD focuses on WHAT a system does, that is the verbs that describe the system; OOSD focuses on what a system is made of, that is, on the nouns, that describe the system. Simply, TSD is concerned with functions performed on data; OOSD is concerned with objects performing the functions. They are similar in that both are concerned with software and data. TSD separates software and data components, whereas OOSD combines data and software into a single construct, an object.
Systems Development Catalysts ( System Project)
The impetus for a system development project comes from three catalysts:
User demand
Technology push and
Strategic pull
User demand arises out of problems users have with the current system; system errors, system efficiency, system compatibility, or system enhancements.
Technology push describes how new technology can be a catalyst, because they can make possible new, more effective and efficient ways of doing business, and exploit new opportunities.
Strategic pull describes how an organization’s objective and strategies can “pull” an organization to support these strategies and help the organization stay competitive.
13
Information Systems Management 3.B [Learner guide] - 2014
On the next page is a narrative, describing people, a dog and a veterinary. We will try to explain some object-oriented concepts, using this story!
Once upon a time there were two unhappy people, a dog and a ball. One person, Fred was very unhappy. The other person Cathy, was unemployed. Fred had heard that dog owners are seldom lonely, so Fred went to a pet shop and bought a dog, a male German Shepherd puppy that he named
Fido. Cathy heard that vets are in high demand, so she earned a veterinary medicine degree from
Tufts University and opened an animal clinic so that she would be happy and have a steady, wellpaying job.
Fred, though no longer lonely, was still unhappy because he worried that his dog, Fido, was very bored. So Fred went back to the pet shop and bought a small red ball. Fred taught Fido how to retrieve the ball. Fred would throw the ball, and Fido would fetch it. Now that Fido had a ball to play with, he was no longer bored; in fact, Fido was very happy, and Fred was no longer worried; he was very happy.
One day, when Fred threw the ball, Fido swallowed it. Fido became very sick; Fred became very worried. Fred took Fido to Cathy’s animal clinic. Cathy treated Fido (you don’t want to know the details) and Fred paid Cathy. Fido was no longer sick. Fred, although no longer worried, was a little poorer; whereas Cathy was a little bit richer.
An object class (or a class) is a
Set of people
Places
Things
Or transactions that share common attributes and perform common functions to help an organization reaches its goals.
Examples:
People: employees, vendors, customers
Places: warehouses, office, branches, shipping docks
Things: products, office equipment, supplies
Transaction: purchases, sales, returns, payments
From the narrative:
People: dog-owner, vet, person
Places: pet shop, clinic
Things: Ball and……..dog
Transaction: payment, treatment
OO: a class is an abstraction or model of a real concept.
14
Information Systems Management 3.B [Learner guide] - 2014
Abstraction plays a major role in the design process in general, relates to describing the essential features of an object, its behavior, and its relationships with other objects, while ignoring aspects irrelevant to the current perspective or purpose.
Object Instances and Inheritance is a particular person, place, thing, or transaction. In other words an object instance is a member of an object class. Each object instance is described by specific values for the attributes of the class and can perform all the methods of the class.
We need objects because they are the building blocks of almost any data or software component.
Inheritance: an object inherits the attributes and methods of its superclass, in addition to having all the attributes and methods of its subclass.
15
Information Systems Management 3.B [Learner guide] - 2014
Inheritance is a property unique to the object-oriented paradigm. It allows the generic description of objects, so that subclasses “inherit” the properties of their parent class, but are specializations of it in some way. Object classes are arranged in hierarchies, with inheritance up the hierarchy.
Need to determine attributes:
OO theory continues by examining the kind of knowledge that is attached to each internal object.
After recognizing the objects, the internal representation of the object must include a record of its
properties. For example, we remember that a shirt’s color is blue and its size is large. In OO, COLOR and SIZE are referred to as attributes; BLUE and LARGE are attribute values. These values ultimately will determine the state of an object. Every object has its own set of attributes (and values) determine by the context of the problem domain: a student object in a ‘maintaining marks’ and in
‘account status’ will be different!
The next task is to identify verb phrases, and express it as a behavior:
1.
“What role does each class play? What are the responsibilities?”
2.
“Does any other object need to use the attributes?’
16
Entity Class
Vet
Dog-Owner
Dog
Information Systems Management 3.B [Learner guide] - 2014
Behavior treat animals charge for treatment play with dog pays for treatment wants to play
Method giveTreatment calculateAmount throwBall makePayment fetchBall
NOTE: What happens with the method/operation calculateAmount?
Key concepts of OO system behavior
Each object class controls its own data and can define methods
1.
To manipulate its own data for its own purposes and
2.
To report data to or to perform manipulations of its data for another object
Every class must perform the CRUD functions of creating, reading, updating, or deleting an instance of an object class. Methods that perform these CRUD functions are called implicit methods.
Private methods are performed for the object’s own benefit and are not known to any other object.
An example can be where an ORDER class has attributes like subtotal, salesTax, and total. Using the method calculateTotal, an object can add the value of its subtotal to the attribute value of salesTax to determine total.
A service, or public method “services” the needs of other objects, and is “public” in the sense that other objects know about its existence. Public methods form the service interface of an object.
Visualize the picture below: it resembles an object. The data and private methods are hidden; only its public methods are exposed. And this exposure is limited to other objects, knowing that the methods exist; they do not know, nor need to know, how the method is performed.
17
Information Systems Management 3.B [Learner guide] - 2014
Method1
Method4
Data
Method2
Method3
This leads to the concept of encapsulation. Encapsulation refers to the integration of data with the processes/operations/functions executed on it. It also incorporates the concept of information
hiding whereby the implementation details of an object are concealed. What encapsulation really means to the analyst or designer is that the kick-off point is determining the objects in an application, and defining them along with their attributes and processes that act on them/operations they perform.
Encapsulation provides two benefits. One is to protect each object’s data by allowing only the object itself to manipulate its data, thus preventing data corruption that can occur in traditional systems in which multiple programs access and manipulate data stored in a single file.
Secondly, encapsulation reduces the rippling effect so often see in conventional systems in which a change in the data structure necessitates a change in the programs that use it. In OO system, the
“what” (data) and “how” (methods) of a class are only known to that class. Thus a single class can be changed without requiring changes to other classes.
The effect of encapsulation is that objects must have some way to communicate so that they can request services: messages. A message is a request from one object to another signaling the receiving object to perform one of the methods: (I used the syntax of T Budd)
<receiving object instance> .<method> <parameters>
The dot means the invocation of a method
The message selector-text following the dot- must match one of the methods defined in the class
Example: fred.throwBall(25, 37)
18
Information Systems Management 3.B [Learner guide] - 2014
This command instructs the dog-owner, fred, to throw the ball to co-ordinates 22 meters west and
15 meters north of some reference point.
Task: Write an instruction for Fido to collect the ball, if Fido is at the point indicated with an X.
Maximum cohesion and minimum coupling are achieved by:
Early encapsulation of objects and processes during analysis which automatically embeds cohesion in the application
Communication via messages which automatically provides minimal coupling
Polymorphism
What is the difference between cathy.throwBall() and fred.throwBall()?
19
Information Systems Management 3.B [Learner guide] - 2014
Fred exploits inheritance and uses all the attributes and methods of PERSON. In Cathy’s case, the same method appears in the super-class as well as the sub-class. In such a case the method in the sub-class overrides - or substitutes – the method in the super-class. Thus although the method throwBall is called by the same message, it will performed different functions depending on whether it is invoked as part of the VET class, or the DOG-OWNER class. That is the power of polymorphism: the same operation may be carried out in different ways that is using different methods by different classes.
Incremental prototyping
Systems development in OO also differs from that of the other methodologies. Even in the traditional life cycle, the distinction between systems design (broad design) and program design
(detailed design/coding) can become blurred. In OO the boundary is even more indistinct, because the top-down analysis and bottom-up program development occur simultaneously or, at least, iteratively. With relation to the SDLC, OO approach ignores front-end activities, such as business analysis and feasibility analysis, assuming that they are performed prior to the use of OO methods.
The three traditional phases of analysis, design, and implementation are all present, but the joints between them are seamless. The unifying factor is the prime role played by objects and their interrelationships. The OO methodology lends itself to an iterative, incremental protptyping life
cycle. Modeling is also prominent in OO design, the basic architecture being assembled from models of the objects and the relationships between them.
Questions:
1.
Define “system”, and explain how an Information System conforms to this definition
2.
Explain the OO concepts of object class, object instance, and inheritance
3.
Describe the phases of the system life cycle
4.
Explain the systems approach to problem solving
5.
Define “system decomposition” and explain several ways of decomposing an Information
System
6.
Describe the catalysts for systems development
7.
List and discuss the goals of system development
8.
Distinguish between a logical and a physical function
9.
Define the 5 functions of an Information System
10.
Explain the sociotechnical perspective of Information System
11.
Define and give examples of the 5 components of an Information System
12.
Explain how an object encapsulates the data and software components of an Information
System
Bibliography:
1.
System Analysis and Design and the transition to Objects, SD Dewitz, 1996, McGraw-Hill
2.
An introduction to Object-Oriented Programming, T Budd, 1991, Addison-Wesley
3.
UML for the IT Business Analyst, H Podeswa, 2005, Thomson
4.
UML 2.0 in a nutshell, D Pilone, 2005, O’Reilly
5.
Advanced Systems Development iNF305-F, R Bosua, R de Villiers, 1996, UNISA
20
Information Systems Management 3.B [Learner guide] - 2014
Appendix 2: Amortization and Excel
Outcome: To be able to calculate a loan schedule, showing the payment, the capital or principal, interest and the amount outstanding.
Example: Draw up an amortization table for a customer, who likes to buy a house of R100 000 at an interest rate of 6% per annum, compounded monthly. They also want to know the monthly
payment if the loan must be repaid over 20 years.
This problem deals with finance, interest rates, and repayment period. You have to master the following: If you do not know a function, you must make use of the help files. Like now you want to know more about “how to calculate a monthly payment”. Do the following: Select Formulas >
Financial and browse to find a suitable function. The functions IPMT, PMT and PPMT seem to be relevant. At this stage as an inquisitive student, you would find out more about these different functions, and select the proper one!
With appropriate headings and the values of the problem in cells beneath it insert the right function to do the calculation. Don’t panic, I will assist you! How many months are there in 20 years?
Work out the first two lines of your repayment schedule i.e.
The payment calculation:
Calculate this!
COPY the formula
21
Information Systems Management 3.B [Learner guide] - 2014
The first two rows of the payment schedule:
At this stage you must start to agree with me that Excel ‘is cool’!!
1.
What-If-Analysis
The automatic recalculation feature of Excel is a powerful tool that can be used to analyse worksheet data. This means that we can scrutinize the IMPACT of changing values in cells that are referenced by a formula in another cell is called what-if-analysis or sensitivity analysis.
Class Exercise: i. What will happen if we change the loan amount from R 100 000 to R 200 000? Well go to cell B3 and change it to 200000, and press enter. Notice how all the values change immediately.
What is the new monthly instalment?
What is the total Interest amount over the period? ii. What will happen if we change the interest rate to 12%? Well go to cell B2 and change it to 0.12, and change the loan amount back to 100000, and press enter. Notice how all the values change immediately.
What is the new monthly instalment?
What is the total Interest amount over the period?
22
Information Systems Management 3.B [Learner guide] - 2014
2.
Homework 1
Prepare an amortization schedule for a debt of R5 000 bearing interest at 12%, compounded monthly, if the debt is amortized by a series of monthly payments for 1 year.
3.
Exercise:
Let’s introduce an interactive scrollbar, as an alternative to ‘What-if-Analysis’:
Notes:
Challenge: Create an interactive toolbar for changes in the interest!!
Cost-Benefit Analysis using Excel 2010
When organizations evaluate the financial feasibility of investment decisions, the time value of money is an essential consideration. This is particularly true when a project involves cash flow patterns which extend over a number of years. We will discuss Discounted Cash Flow (DCF), Net
Present Value (NPV) and Payback Analysis as tools to assess the profitability of a project.
4.
DCF
DCF is most often used to describe the calculation whereby the rate of interest is found which equates the present value of the negative and positive cash flows from a particular investment, where the negative flows have to do with costs and the positive flows are anticipated profits from the investment. Formally this is solving the equation
𝐴 =
𝐶
1
1 + 𝑟
+
𝐶
2
(1 + 𝑟) 2
+ ⋯ +
𝐶 𝑛
(1 + 𝑟) 𝑛
Where A is the capital outlay;
C
1
, C
2
, …… are the end-of-year cash flows arising as a result of the outlay r is the rate if interest for which the equation is solved.
4.1
Internal Rate of Return (IRR)
This is the rate which is found as the solution of a DCF calculation. It is thus the rate which is specifically relevant to the expected outcome of the project being considered and thus is internal to it as opposed to external rates of return such as money market yields.
Though there is no formal convention this rate is usually designated as r.
23
Information Systems Management 3.B [Learner guide] - 2014
4.2
Example
A project is being considered by a company the details of which are:
Capital cost of R 1000.00
Positive cash flows of R 500, 600 and 400 respectively at the end of year 1, 2 and 3.
What is the IRR for this investment?
Capital cost
R 1000
End of year cash flows
1
R 500
2
R 600
3
R 400
OPEN Excel, and set up the outlay as follows:
(Note: To find the IRR function, click on ‘Insert Function’, select as category ‘Financial’, and select
‘IRR’.)
Although the answer is 24.22%, it is unlikely that the cost and cash flow estimates would justify such spurious accuracy and the IRR can be taken as 24%.
4.3 Exercise
A company is considering two mutual exclusive projects, the details of which are as follows:
Capital cost
Project A R 1000
1
R 100
End of year cash flows
2
R 1000
3
R 653
Project B R 1000 R 600 R 600 R 374
24
Information Systems Management 3.B [Learner guide] - 2014
Show that the DCF returns are:
Project A 28%
Project B 29%
5.
NPV
This method is an alternative to DCF whereby a rate of return is assumed, (e.g. a company’s cost of capital), and the cash flows are discounted to the time that the initial capital outlay was incurred.
The net difference between initial capital outlay and the discounted cash flow is a commuted measure of the project’s expected contribution to profit, if positive.
5.1 Example
Using the same data as Example 1.2 the company is prepared to consider any investment yielding
20% or over as this rate is considered to represent a reasonable rate of return.
The present value of the cash flow is
𝑃𝑉 =
500
1.2
600
+
1.2
2
+
400
1.2
3
But we will use Excel to solve the above, using the NPV function!!
When executing this formula, you will find that the NPV = R 65, which can represent the commuted value of the profit which will accrue in the addition to the acceptable level of IRR.
5.3 Exercise
Use the data of exercise 1.2 and calculate the NPV’s of the two projects if the company is prepared to consider all projects that have a return in excess of 20%.
Capital cost
1
End of year cash flows
2 3
Project A R 1000
Project B R 1000
R 100
R 600
R 1000
R 600
R 653
R 374
25
Information Systems Management 3.B [Learner guide] - 2014
Show that the NPV’s are;
Project A R156
Project B R133
5.4 Interpretation of results
This illustrates the features of different decision processes. If capital is available, and the cost of obtaining it is known, NPV would rank A first but would recommend both A and B.
However if there is a competition for capital, then on a DCF basis B rank before A
5.5 Homework 2
A company is considering two projects the details of which are:
Capital cost
Project A R 2000
Project B R 1000
1
R 700
R 300
End of year cash flows
2
R 1000
R 700
3
R 1370
R 609
Calculate:
1. Calculate the DCF’s returns of the two projects
2. Calculate the NPV assuming a rate of return of 15%
Answers:
1. 22%, 25% respectively
2. R 266, R 191 respectively
6. Payback Analysis
Payback analysis is the process of determining how long it takes an information system to pay for itself. The time it takes to recover the project’s cost is called the payback period.
To perform such an analysis, you carry out the following steps: i. Determine the initial development cost of the project ii. Estimate annual benefits
26
Information Systems Management 3.B [Learner guide] - 2014 iii. Determine annual operating costs iv. Find the payback period by comparing total development and operating costs to the accumulated value of the benefits produced by the system.
6.1 Example
Consider the following cost-benefit table:
Task: i. Copy the above table in Excel ii. Use formulae to calculate the accumulative costs and benefits
27
Information Systems Management 3.B [Learner guide] - 2014
0
60,000
1 2 3 4
77,000 95,500 114,700 135,700
5
157,700 iii. By inspecting the table, determine when the cumulative benefits exceed the cumulative costs:
Answer: At the end of year 4, the cumulative costs (135,700) are slightly larger than the cumulative benefits (132,000). During year 5, the cumulative benefits (171,000) far exceed the cumulative costs of 157,700. Therefore, at some point in time during Year 5, the accumulated costs and benefits are equal, establishing the payback period. iv. Determine the payback period graphical:
Check out the graph below:
It looks like 4.2 years? What is 0.2 of a year? You agree it is about 2½ months?
Payback period is 4 years, 2½ months
Year 4
28
Information Systems Management 3.B [Learner guide] - 2014 v. Use Excel and calculate the Return on Investment (ROI):
ROI is a percentage rate that measures profitability by comparing the total net benefits (the return) received from a project to the total coats (the investment) of the project.
𝑅𝑂𝐼 =
𝑇𝑜𝑡𝑎𝑙 𝐵𝑒𝑛𝑒𝑓𝑖𝑡𝑠 − 𝑇𝑜𝑡𝑎𝑙 𝐶𝑜𝑠𝑡𝑠
𝑇𝑜𝑡𝑎𝑙 𝐶𝑜𝑠𝑡𝑠
From Excel, ROI = 18%
Homework 3
Consider the following cost-benefit table: i. Use Excel and calculate the cumulative costs and benefits ii. Estimate the payback period from the table iii. Determine the payback period graphical iv. Determine the ROI, in cell B10
Summarizing ALL of the above in ONE Excel sheet!
Consider the following project, consisting of yearly benefits, development costs, as well as yearly ongoing costs:
Value of Benefits
Year 0 Year 1 Year 2 Year 3 Year 4 Year 5 TOTAL
889000 1139000 1514000 2077000 2927000
Development Costs -1336000
On-going Costs -241000 -241000 -241000 -241000 -241000
To analyse this we need to determine the PV’s and the NPV’s. We will do it, but we also introduce the Cumulative NPV. You will realize now the advantages! Assume a discount rate of 10%, giving the following discount factors:
29
Information Systems Management 3.B [Learner guide] - 2014
Create the following spreadsheet:
Year Discount Factor
1 0.9091
2
3
4
5
0.8264
0.7513
0.6830
0.6209 i. Calculate the PV of benefits, and their TOTAL: cell H4 ii. Calculate the PV of costs, and their TOTAL: cell H9 iii. Calculate the yearly NPV iv. Calculate the Cumulative NPV. What is the meaning of the value in cell G12? v. Payback period/breakeven point: the year the running accumulated NPV turns positive, is the year in which payback occurs. Here we also introduce ‘Interpolation’. vi. ROI? Why don’t you try it!
Hint: Do the calculations step by step! The only extra work is to determine the Discount Factors.
30
Information Systems Management 3.B [Learner guide] - 2014
At this stage you can determine the NPV of the project! How much?
Complete the rest of the sheet:
If you interested you can Google ‘Linear Interpolation’, to shed light on the calculation of ‘Payback
Period’!
31
Information Systems Management 3.B [Learner guide] - 2014
Homework 4: Develop a NPV spreadsheet, similar to the one above, but at a discount rate of 8%.
Adding a data series to an existing chart
Sometimes we will have already created a graph and then decide that we also want to plot tha graph of another function over the same range of x-values.
Consider the function f(x) = x 3 /12, in the range -4 to +4: (use Excel to calculate column B, and draw a graph!)
Next we want to include the graph of the inverse function by reversing the roles of the x- and yvalues:
32
Information Systems Management 3.B [Learner guide] - 2014 i.
-4
-3 x f(x)
-5.3333
-2.250 x f -1 (x) ii. Select the chart of f(x) iii. In the Data group on the Chart Tools design tab, click the Select Data button iv. Select the ranges for the series values v. Click OK vi. Fine tuning will be done in class
Comments on homework, Excel Chapter 2, EX131, Fig 2-79:
Instruction Part 2:
“Manually increment each of the six values in the revenue column by $1,000,000 until the lowest ending balance in cell F12 is greater than zero”
Example:
What will be the value of A4, when A2 = 6000? We will increment A2 manually in steps of 500.
This is a nice application of an Interactive Scroll Bar.
33
Answer: A2 = 5000
Information Systems Management 3.B [Learner guide] - 2014
34
Information Systems Management 3.B [Learner guide] - 2014
4.
5
6.
7.
8.
9.
10.
Task ID Description of Task
House Project
1.
Site Preparation
Clear site
2.
3.
Fencing
Material store
Floors
11.
12.
13.
14.
Dig foundations
Cast foundations
Floor slabs
Erecting walls
Build walls
Build roof
Windows
Plaster walls
Ceiling
Paint
Site finale
Landscaping
Paving
Duration Precedence
2 days none
1 week
2 days
3 weeks
1 day
1 day
4 weeks
3 weeks
1 week
3 week
1 week
3 weeks
1 week
1 week
1.
Complete the ‘Precedence’-task column.
2.
Represent the above in a Gant Chart
3.
Add a task ‘before landscaping’: uMhlathuze Borough to connect electricity, water connections and sewage connections. Give a week for each task
4.
Add a wait period of 1 day between ‘Floor Slabs’ and ‘Build Walls’
5.
Add the following Resources on the Resource Sheet:
Walls & Paving Paving
Glass
Works
R85.00 R96.89
Glass Calore Ltd
ABC Garden
Services
Waldo's
Construction
Garden
R35.00
R25.00
Construction R55.00
R48.95
R35.00
R65.00
Prominent Paints Paint R40.00
Questions:
1.
How long will it take to complete the house?
R56.00
6 Co005
10 Co006
5 Co008
45 Co0010
15 Co0012
Appendix 3: Project Management
Class Exercise: Let’s build a house! (House Project)
35
Information Systems Management 3.B [Learner guide] - 2014
Assignment : Creating an IS, the following tasks were identified:
TASK DESCRIPTION DURATION
(DAYS)
1 Develop Plan 1
PREDECESSOR
TASK
2
3
Assign Tasks 4
Obtain Hardware 17
1
1
4
5
6
7
8
9
10
Programming
Install Hardware
Program Test
Convert Files
System Test
User Training
70
10
30
Write User Manual 25
20
35
20
2
3
4
5
5
6
7, 8
11 User test 25 9, 10
Task:
1.
Identify milestones
2.
Use the above information and create a WBS (sequential time line) using MS Project.
(Gantt Chart)
3.
Create and add at least four resources of your choice.
4.
Convert the Gantt Chart into a PERT chart.
36