Building Applications: Information Systems
Building Applications: Information Systems
Information Systems
System o A collection of pieces working together to achieve a common goal An information system includes o Data o People o Procedures o Hardware and software
Analysis
A program specification (goals and objectives of the project) is developed A feasibility assessment is performed User requirements are defined Analysts recommend a plan of action
Design
A detailed plan for programmers is developed Flowcharts and data-flow diagrams (example below) are used for the current and proposed system
Helps designers adapt to changes in program specifications Includes customer involvement No communication delays Also referred to as o Accelerated design o Facilitated team technique
Top-Down Design
Problem is divided into a series of high-level tasks Detailed subtasks are created from high-level tasks
Object-Oriented Analysis
Classes (categories of inputs) are identified Classes are defined by information (data) and actions (methods or behaviours) Reusability is key
Step 3: Coding
Coding is translating an algorithm into a programming language Generations of programming languages o 1GL: Machine o 2GL: Assembly o 3GL: FORTRAN, BASIC, C, Java, C++ o 4GL: SQL o 5GL: PROLOG
Compilation
Compilation is the process of converting code into machine language The compiler reads the source code and translates it into machine language After compilation, programmers have an executable program
Interpreter
Some programming languages do not have a compiler but use an interpreter instead o The interpreter translates source code into a line-by-line intermediate form o Each line is executed before the next line is compiled o Programmers do not have to wait for the entire program to be recompiled each time they make a change o Programmers can immediately see the results of changes as they are making them
Step 4: Debugging
Running a program to find errors is known as debugging Sample inputs are used to determine runtime (logic) errors Debugger: Tool that helps programmers locate runtime errors