Date post: | 31-Dec-2015 |
Category: |
Documents |
Upload: | colleen-wiggins |
View: | 48 times |
Download: | 0 times |
Systems Analysis & Programming
10.1 Systems Development10.2 Programming: A Five-Step Procedure10.3 5 Generations of Programming Languages10.4 Programming Languages Used Today10.5 Object-Oriented & Visual Programming10.6 Markup & Scripting Languages
Chapte
r1010
2
Systems Development
Organizations can make mistakes, and big organizations can make really big mistakes
Murphy’s Law: Whatever can go wrong, will go wrong, and at the worst possible time
A system A collection of related components that interact to
perform a task in order to accomplish a goal Systems Development
6-phase process of gathering information about system requirements and using that to develop a new system that improves productivity
Warning! Road Out!
3
Systems Development
The three kinds of “roles” (users) of a project are: Users
The new system must ALWAYS be developed in consultation with the people who will be using the completed system
Management Managers within an organization should be consulted
about the system, as they control the budget and resources
Technical staff The Information Systems or IT staff must be involved so
they can make sure the technology is there
4
Systems Development
Systems Analyst An information specialist who performs
systems analysis, design, and implementation
His or her job is to study the information and communications needs of an organization and determine what changes are needed to deliver better information to the people who need it
5
Systems Development
The 6 phases of systems analysis & design are:
Information systems are frequently revised and upgraded
Steps in the cycle often overlap
6
Systems Development
Phase 1: Conduct a preliminary investigation Conduct a preliminary analysis Propose alternative solutions
Interview people within the organization Study what competitors are doing Decide to leave the system as is, improve it, or
develop a new system
Describe costs and benefits Submit a preliminary plan with
recommendations This should be a written report Get management approvals for next phase
7
Systems Development
Phase 2: Analyze the system Gather data
Interview employees and managers Develop, distribute, analyze questionnaires Review current written documents Observe people and processes at work
Analyze the data Use system modeling tools Create a data flow diagram to show how data flows
through the system Write a report and get approvals for next phase
Document how the current system works Document problems with the current system Describe the requirements for the new system
8
Systems Development
Phase 3: Design the system Notice that you don’t design the new system
until you have done phase 2 since that establishes the requirements it must meet!
Do a preliminary design Often involves prototyping
Do a detail design, showing: Input requirements Output requirements Storage requirements Processing requirements System controls Backup
Write a report and get approvals for next phase
9
Systems Development
Phase 4: Develop the system Develop or acquire the software Acquire and integrate the hardware Test the system
Unit testing Systems testing with both analysts and end-
users End-user testing is critical, as they don’t
know the software and will show the developers where they forgot something
10
Systems Development
Phase 5: Implement the system Choose a strategy to convert to the new
system Direct implementation Parallel implementation Phased implementation Pilot implementation
Train the users Document the system Give classes or train the trainers
11
Systems Development
Phase 6: Maintain the system Perform periodic evaluations Make changes to the system based on
new conditions Document those changes
12
Programming: A Five-Step Procedure
A program is a list of instructions that the computer must follow to process data into information
The five steps are1.Clarify/define the problem2.Design the program3.Code the program4.Test the program5.Document and maintain the program
13
5 Generations of Programming Languages 1945 – 1st Generation – Machine Language
The basic language of the computer – all zeros and ones
Each CPU architecture had a different machine language
14
5 Generations of Programming Languages 1945 – 1st Generation – Machine Language Mid-1950s – 2nd Generation – Assembly
Language Mnemonic version of machine language Faster to program in than machine language Each CPU architecture had a different
assembler
15
5 Generations of Programming Languages 1945 – 1st Generation – Machine Language Mid-1950s – 2nd Generation – Assembly
Language Mid-1950s to 60s – 3rd Generation – High-
level Languages (procedural languages) such as FORTRAN, COBOL, BASIC, C These languages are portable (the same
across all CPUs) The programmer writes, then interprets or
compiles the programs The compiler or interpreter translates the
code into the CPU-specific assembler
16
5 Generations of Programming Languages 1945 – 1st Generation – Machine Language Mid-1950s – 2nd Generation – Assembly Language Mid-1950s to 60s – 3rd Generation – High-level
Languages (procedural languages) such as FORTRAN, COBOL, BASIC, C
Early 1970s – 4th Generation – Problem-oriented Languages such as SQL, Intellect, NOMAD, FOCUS Easier to program in than 3rd generation languages Three types are:
Report generators Query languages Application generators
17
5 Generations of Programming Languages 1945 – 1st Generation – Machine Language Mid-1950s – 2nd Generation – Assembly Language Mid-1950s to 60s – 3rd Generation – High-level Languages
(procedural languages) such as FORTRAN, COBOL, BASIC, C Early 1970s – 4th Generation – Problem-oriented Languages such
as Intellect, NOMAD, FOCUS
Early 1980s – 5th Generation – Natural Languages Programming languages that use human
language to give people a more natural connection with computers
Part of the field of artificial intelligence
18
Programming Languages Used Today
19
Object-Oriented What Is an Object?
Objects are key to understanding object-oriented technology.
Look around right now and you'll find many examples of real-world objects: your dog, your desk, your television set, your bicycle.
20
Object-Oriented What Is an Object? Real-world objects share two
characteristics: They all have state and behavior.
Dogs have state (name, color, breed, hungry) and
behavior (barking, fetching, wagging tail).
Identifying the state and behavior for real-world objects is a great way to begin thinking in terms of object-oriented programming.
21
Object-Oriented What Is an Object? Software objects are conceptually
similar to real-world objects: they too consist of state and related behavior.
An object stores its state in properties (fields, attributes or variables in some programming languages)
An object exposes its behavior through methods (functions in some programming languages).
22
Object-Oriented What Is a Method? Methods operate on an object's
internal state and serve as the primary mechanism for object-to-object communication.
Hiding internal state and requiring all interaction to be performed through an object's methods is known as data encapsulation — a fundamental principle of object-oriented programming.
23
Object-Oriented & Visual Programming
In Object oriented Programming (OOP) data and processing instructions are combined into an object that can be reused Object
Self-contained module consisting of reusable code
Message The instruction received by the object indicating it
is time to perform an action
Method The processing instructions within the object to
perform the specified action
24
Object-Oriented & Visual Programming Black Box
Objects are like a black box in that the actions and the objects are specified, but the methods used are internal to the object This means the programmer that uses an object does
not need to know how the program inside the object does what it does
For example, Microsoft Excel is like an object Most of us use Excel without understanding what the
programmers at Microsoft did to make Excel work If we had to know that, it would take a lot longer to learn how to
use Excel! Programmers who use objects can write programs a lot faster,
because objects save so much work
25
Object-Oriented & Visual Programming 3 basic concepts of OOP
Encapsulation One object contains (encapsulates) both
State Data (properties) Relevant processing instructions or behavior (methods)
Inheritance One object can be used as the foundation for other
objects Objects can be arranged in hierarchies – classes and
subclasses Objects can inherit actions and attributes from each
other Polymorphism
Allows a single definition to be used with different data types and different functions
Means a message produces different results depending on the object it is sent to
26
Object-Oriented & Visual Programming
DoorsHave a Handle
openclose
Patio doorsHave a slider
slide openslide closed
Front doorsHave locks
Car doorsHave locks
Have windows
The “Door” classActions
performed by a door
(behavior)Subclasses of doors inherit from the door class, but also have their own unique actions and attributes
Notice we only list the actions & attributes when
they differ from those of class
Example of Inheritance Hierarchy with Specialization
27
Object-Oriented & Visual Programming Visual Basic is an example of visual
programming Using a mouse, the programmer drags and
drops objects on screen The objects are arranged to make up the
graphical user interface for the program being written
By double-clicking on those objects, the programmer can get into a coding window and write the programs to control the actions and behaviors of those objects
This makes it fast and easy to build prototype user interfaces and get end-user approval before doing a lot of programming