code development code development for end user systems

15
Code Development Code development for end user systems

Upload: harriet-houston

Post on 04-Jan-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Code Development Code development for end user systems

Code Development

Code development for end user systems

Page 2: Code Development Code development for end user systems

Program Architecture

The organization of code components

The objective of system architecture is to simplify maintenance by

putting code together that will be changed at the same time

Page 3: Code Development Code development for end user systems

Architectural Philosophies

Requirements Driven Data Driven Dialog Driven Event Driven

Page 4: Code Development Code development for end user systems

Coding Standards

StructuredLimit control structures to sequence,

iteration, and selection Event Driven

Interactive systems driven by user actions

Object orientedEncapsulate data and code into objects

that can be called independently

Page 5: Code Development Code development for end user systems

Good Code Maintenance is 80% of the cost of a

large system. Instructions that will be changed

together located together. Errors and bugs isolated.

Page 6: Code Development Code development for end user systems

Traditional Design

Traditional Life Cycle ApproachFormal MethodologiesCASE ToolsPurchased Systems

New ApproachesRADEvolutionary CodeGUI designObject Oriented Design

Page 7: Code Development Code development for end user systems

Good Practice: Loose Coupling

Associations among code modules

Data passes only data Control passes data and control

codes Stamp passes information from

the structure of the data Hybrid one module changes the

code in another

Page 8: Code Development Code development for end user systems

Good Practice: Tight Cohesion

Functions done by one code module.

A module is a set of code statements that is called and executed together. A cohesive module executes only statements that always go together.

Page 9: Code Development Code development for end user systems

Typical Modules

Modules in identified files Macros and functions Forms, Reports and Queries Objects

Page 10: Code Development Code development for end user systems

Programming Principles

KISS (Keep it Simple, Stupid)Volatility

Prototyped code will be revised frequently. Simple solutions are much better than elegant ones that are hard to understand.

Clarity over EfficiencyEUC systems are usually elective and not run as production code.

Page 11: Code Development Code development for end user systems

Programming Principles

Code should be written to be readGood communication principles

White spaceBoxesIndentationExplain complex logic

Modular constructionVery simple control structures

Mnemonic variables

Page 12: Code Development Code development for end user systems

Programming Principles

Minimize external documentationDocument the objective rather than the

procedure. The next programmer can find his own solution too.

Include descriptive and complete title lines

Include an initial statement of program purpose

Line comments hard to maintain

Page 13: Code Development Code development for end user systems

Programming Principles

Fully document data filesUse labels and file descriptionsUse original common data sources where

possibleCreate as few original data tables as

possibleDocument edits and modifications

Page 14: Code Development Code development for end user systems

Programming Principles

Retain natural documentationKeep instructional memos and notes in

fileDocument objectives so that modules

can be reprogrammed as needed

Page 15: Code Development Code development for end user systems

References

Weinberg, ‘Prototyping and the SDLC’, J Info Systems Mgt, 1991.Chen, Nunamaker, Weber, ‘CASE: present status and future directions’,

Database, 1989