1
|
|
2
|
- Planning for Information Technologies
- How People Make Systems
- How People Make Programs
- The System Development Life Cycle
- From Idea to Algorithm
- From Algorithm to Program
- Programming Languages and Methodologies
- The State of Software
|
3
|
- Planning is a process of
identifying a desired goal
or objective and then
deciding what will be done
to achieve the objective,
when it will be done,
who will do it, and how
it will be done.
|
4
|
- Information technology planning involves four phases:
|
5
|
- Strategic Planning
- This first phase of IT planning is referred to as strategic planning
which involves aligning the Information Technology Plan with the
Overall Business Plan.
- A framework used by organizations to make sure IT plans truly reflect
business needs is known as the critical success factors (CSF) approach.
|
6
|
- Information technology Infrastructure analysis
- The second phase in IT planning is to describe the desirable features
for the organization’s IT infrastructure.
- The IT infrastructure comprises all the organization’s information
systems hardware, software, and telecommunications equipment, the
information system department’s staff and other personnel, and the
organizational structure and procedures that affect accessing,
processing, and using information in the company.
|
7
|
- Allocating Resources
- The third phase of information technology planning is resource
allocation, a process of selecting the information system projects to
invest in.
- Cost-benefit analysis is an approach many businesses use to decide
whether an information system project is worthwhile on its own merits
and also in comparison with other proposed information system projects.
|
8
|
- Project Planning
- The fourth phase of IT planning is project planning. The purpose of
project planning is to organize a sequence of steps to accomplish a
particular project’s goals and to keep the project on schedule and
within budget.
- A project plan includes a description of the measurable project goals
that are used to evaluate the success of the project. A project goal
can relate to the process of building the information system—completing
the project by a certain date, for example.
|
9
|
- Project Planning
- Project management software such as Gantt charts help coordinate,
schedule, and track complex projects. A Gantt chart shows each step or
category of steps in a plan, along with their planned and actual start
and completion times.
|
10
|
- Project Planning
- Project managers use the critical path method (CPM) to keep track of a
project’s schedule. CPM is a mathematical model of a project’s schedule
used to calculate when particular activities will be completed.
|
11
|
- Project Planning
- Project managers sometimes use a variation of CPM called the program
evaluation and review technique (PERT). With PERT, a manager uses three
time estimates — an optimistic, a pessimistic, and a most likely time
to complete each activity.
|
12
|
- The process of systems development is important for any organization and
requires not only technical skills but also creativity.
|
13
|
|
14
|
|
15
|
|
16
|
|
17
|
|
18
|
|
19
|
|
20
|
|
21
|
- Programming is a specialized form of problem solving and involves:
- Defining the problem
- Devising, refining, and testing the algorithm
- Writing the program
- Testing and debugging the program
|
22
|
- Start with a statement of the problem:
|
23
|
- The first cut at the problem breaks it into three parts: a beginning, a
middle, and an end. Each of these
parts represents a smaller programming problem to solve.
|
24
|
- The next refinement fills in a few details for each part.
|
25
|
- Fill in the crucial details.
|
26
|
- Give the computer a way of
knowing when seven
turns have passed.
|
27
|
- Logical structures that control the order in which instructions are
carried out
- Three basic control structures:
- Sequence--group of instructions followed in order from first to last
- Selection--to choose between alternative courses of action depending on
certain conditions.
- Repetition--allows a group of steps to be repeated several times,
usually until some condition is satisfied
|
28
|
- This round of testing is designed to check the logic of the algorithm
- Test the algorithm by following the instructions using different sets of
numbers.
|
29
|
- A simple program contains:
- The program heading
- The declarations and definition
- The body
|
30
|
- A text editor is used to enter and save the program.
- Use either a translator or compiler to translate the program into
machine language.
|
31
|
|
32
|
|
33
|
|
34
|
|
35
|
- High level languages fall somewhere between natural human languages and
precise machine languages
- Examples: C++, Java, Basic,
FORTRAN, COBOL
- They are easier to write, debug and are transportable between machines.
|
36
|
|
37
|
- An unstructured program is like a huge, complicated machine that can’t
be easily broken down into sections.
- Any modification would require the entire machine to be disassembled.
|
38
|
- problems can be isolated to individual modules
- the input and output of each module in the assembly line are easier to
understand
|
39
|
- In object-oriented programming a program is not just a collection of
step-by-step instructions or procedures; it’s a collection of objects.
- Objects contain both data and instructions and can send and receive
messages.
|
40
|
- Early BASIC - The program with numbered lines. Statements are executed
in numerical order unless control is transferred to another statement
with a GoTo statement.
- 2. Structured BASIC - The modular program with many structured
programming features. The main
program has been reduced to a handful of statements at the top of the
listing. These statements display
the overall logic of the program.
As it is running, the main program uses Call statements to
transfer control to each subprogram.
- 3. Visual BASIC- A modern programming environment that includes many of
the ideas and tools of object-oriented programming.
|
41
|
- With OOP technology, programmers can build programs from prefabricated
objects in the same way builders construct houses from prefabricated
walls.
- For example, an object that sorts addresses in alphabetical order in a
mailing list database can also be used in a program that sorts hotel
reservations alphabetically.
|
42
|
- Visual programming tools allow programmers to create large portions of
their programs by drawing pictures and pointing to on-screen objects,
eliminating much of the tedious coding of traditional programming.
- Apple’s HyperCard was probably the first popular example of a visual
programming environment.
- Today Microsoft’s Visual Basic is widely used by professionals and
hobbyists alike because of its visual approach to programming.
|
43
|
|
44
|
- Construct small custom applications from software components
- Customizability is possible only if applications are programmed to allow
it. More and more software programs, including operating systems, are
designed with extensibility in mind.
|
45
|
- HTML
- JavaScript
- Java
- Perl
- XML
|
46
|
- Programming languages will continue to evolve in the direction of
natural languages like English.
- The line between programmer and user is likely to grow hazy.
- Computers will play an ever-increasing role in programming themselves
|
47
|
- Many computer scientists prefer to call the field computing science
because it focuses on the process of computing rather than on computer
hardware.
- Computer science includes a number of focus areas:
- Computer theory
- Algorithms
- Data structures
- Programming concepts and languages
- Computer architecture
- Management information systems
- Software engineering
|
48
|
- Software errors are difficult to locate
and more difficult to remove.
- Errors of omission
- Syntax errors
- Logic errors
- Clerical errors
- Capacity errors
- Judgment errors
|
49
|
- Programming techniques
- Programming environments
- Program verification
- Clean-room programming
- Human management
|
50
|
|