code development code development for end user systems
TRANSCRIPT
![Page 1: Code Development Code development for end user systems](https://reader036.vdocuments.us/reader036/viewer/2022082819/56649f1d5503460f94c34bcb/html5/thumbnails/1.jpg)
Code Development
Code development for end user systems
![Page 2: Code Development Code development for end user systems](https://reader036.vdocuments.us/reader036/viewer/2022082819/56649f1d5503460f94c34bcb/html5/thumbnails/2.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022082819/56649f1d5503460f94c34bcb/html5/thumbnails/3.jpg)
Architectural Philosophies
Requirements Driven Data Driven Dialog Driven Event Driven
![Page 4: Code Development Code development for end user systems](https://reader036.vdocuments.us/reader036/viewer/2022082819/56649f1d5503460f94c34bcb/html5/thumbnails/4.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022082819/56649f1d5503460f94c34bcb/html5/thumbnails/5.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022082819/56649f1d5503460f94c34bcb/html5/thumbnails/6.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022082819/56649f1d5503460f94c34bcb/html5/thumbnails/7.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022082819/56649f1d5503460f94c34bcb/html5/thumbnails/8.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022082819/56649f1d5503460f94c34bcb/html5/thumbnails/9.jpg)
Typical Modules
Modules in identified files Macros and functions Forms, Reports and Queries Objects
![Page 10: Code Development Code development for end user systems](https://reader036.vdocuments.us/reader036/viewer/2022082819/56649f1d5503460f94c34bcb/html5/thumbnails/10.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022082819/56649f1d5503460f94c34bcb/html5/thumbnails/11.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022082819/56649f1d5503460f94c34bcb/html5/thumbnails/12.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022082819/56649f1d5503460f94c34bcb/html5/thumbnails/13.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022082819/56649f1d5503460f94c34bcb/html5/thumbnails/14.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022082819/56649f1d5503460f94c34bcb/html5/thumbnails/15.jpg)
References
Weinberg, ‘Prototyping and the SDLC’, J Info Systems Mgt, 1991.Chen, Nunamaker, Weber, ‘CASE: present status and future directions’,
Database, 1989