cse2207/cse3007 rapid applications programming with windows week 13
Post on 02-Jan-2016
214 Views
Preview:
TRANSCRIPT
Rapid Application Development (RAD)
“RAD refers to a development lifecycle designed to give much faster development and higher quality results than the traditional lifecycle” James Martin 1991
Commonly also results in lower-cost development
Systems meet user needs better, with lower maintenance costs
Need to integrate tools, methodology, people and management
RAD...
ToolsMust match the tool to the systemMaximum automation, task integration
project planning data, process modeling design, prototyping code generation testing report generation
RAD...
MethodologyA methodology
specifies the process of development defines the tasks, how, when they are done,
how they are related, their inputs, deliverables gives guidelines how to accomplish each task specifies skills required, training needed identifies possible risks and how to avoid them best if computerized
RAD...
People“Fast application development, like ocean
racing is highly dependent on people”The I.T. People User Community
Project Manager Executive Owner (pays!)
Construction Team Req’ments planning teamRAD Workshop Leader User Design TeamData Modeling Expert Construction Assist. teamHuman Factors Expert User Review Board Repository Manager Training Manager
RAD...
ManagementMotivate MeasureProvide a supportive, integrated workplaceClearly define responsibilities, deadlines for
both users and IT personnelCreate a common infrastructure of networks,
standards, data, reusable componentsPublish successes!
RAD...
The Four Phases of RADRequirements Planning Phase
(Analysis)User Design Phase (Design)Construction (Detailed design and
code generation)Cutover (Installation and Handover)
General Advantages of GUI’s
Easier to learnEasier to use (mostly)(But much harder to build (mostly))WYSIWYGBuilt around a semi-consistent
metaphor: The DesktopSupports transportability of knowledgeEvent Driven/Object Oriented
Types of Prototypes
Interface PrototypeTest the usability of the system’s
intended interfaceRequires a working system ‘underneath’Should determine the
cost of learning the system cost of using the system (these are different issues!)
Happens late in the development process
Types of Prototypes...
Logic PrototypeTest the analyst/designers’
understanding of the users’ requirements
Important phase of analysis when the users are experts at their tasks and not able to articulate requirements
Must happen early in the analysis phase
Types of Prototypes...
System SketchUsed to determine the look and feel of
the applicationUseful in both Interface and System
prototypesRequires a superprogrammerRequires a large number of sketchesHappens very early in the analysis
phase
Types of Prototypes...Incremental ImplementationSystem prototyped and developed in
‘chunks’ or sub-systems, then put into production as ‘beta’ versions
Expect:continual program restructuring, data model revision, screen re-design.
Assumes: preliminary analysis can accurately ‘chunk’
system components prototypes are reliable and can be
maintained
Requirements Elicitation
Errors made in initial analysis cost up to 20 times more than errors made later
Basically 2 types of systems (i)requirements come from external,
written sources e.g. Tax and other laws, Accounting stds, Union agreements, employment laws etc
(ii)the restClients with (i) ‘translate’ the (large)
body of written material during analysis small chance of major errors in analysis
Requirements Elicitation...
Human Expertise is hard to access: Know what - knowledge that can be
consciously retrieved and articulated e.g. ‘book learning’
Know how - skill-based knowledge which is basis of expert performance without much conscious thought - the result of experience, often difficult to articulate
Expertise is only exercised in action so you must provide, ASAP, real activities with
real data i.e. a working prototype
Prototyping, Step by Step
Design Forms Establish standards, use W/95/GUI
standards Break the job into tasks, then ‘walk through’
the tasks with the user Decide forms relationships, navigation
Constantly review how the development matches/fits with the user requirements involve the ‘real’ users, especially when the
business rules are hard to understand
VB6.0 and Delphi 5
Two ways to approach these tools: From the point of view of the developer From the point of view of the user
VB6.0 and Delphi 5
The Developer What does s/he see, work with? Features to support RAD? Standard
commercial system tasks? Writing code, compiling, testing? Designing the interface? Reports? Easy to change? Find what you want?
Access different parts of a Project? Access to other Windows apps? Etc etc etc!
VB6.0 and Delphi 5
The End-User What do they see? How do they interact
with the interface: event-driven? (support for ‘transportability of knowledge’?)
What options do they have for using an application?
What features can help a user do their task more easily, with less frustration, error?
How are errors handled? Etc, etc, etc!
The Final Exam
Time, Place You have to look this up yourself! Masters students have been notified
Worth 40% for the subject Has 100 marks on the paper
Has Section A (40 marks) and Section B (60 marks)
You must answer questions from Section A and from Section B
The Final Exam...
Section A 40 MarksTopic is Rapid Application
DevelopmentThere are 3 questions, each worth 20
marksYou must answer ANY 2 of the three
Final Exam...Section B 60 MarksThere are two parts to this section,
each worth 30 marks.The first part presents a screen-shot and
VB6.0 code. There are 8 questions relating to the code. Some questions require you to write code.
The code you are asked to write will ‘fit in’ to the code presented to you. (But you write the actual code in your exam book!!)
Final Exam...In the second part of Section B, you
have to answer two more questions, each worth 15 marks.
There are three questions for you to choose from (you answer only two)
The questions relate to VB6.0 and Delphi 5, looking at issues from the viewpoints of both developers and users. To support your answers, give examples
from developing the two assignments.
Final Exam...Tips to maximize your marks:
Read the question carefully, then ANSWER THE QUESTION, ensuring that you cover ALL the points, aspects mentioned.
Give examples to support your answer (if you have done the 2 assignments, this will give you enough background)
Just re-presenting the lecture points will gain you at maximum a Credit for that question (assuming that your points answer the question!)
For 20 marks, write about 2 pages For 15 marks, write about 1.5 pages Answer only as many questions as are required!
top related