Вы находитесь на странице: 1из 15

CHAPTER 6: META MODELING CONCEPTS GENERIC FRAMEWORKS I: COMPARE

AND CONTRAST METHODS AND TOOLS

EVOLUTIONARY SYSTEMS DEVELOPMENT / INCREMENTAL DEVELOPMENT

A staged and incremental approach that periodically delivers a system that is increasingly complete over
time.

1st implementation:
 Not seen as the main objective
 Just part of the continuing evolution and improvement of the system. Until an optimal solution
to the original problem / requirement is achieved.

 Series of development effort.


 1st iteration begins at a particular point in time and contains a full set of stages / phase.
o Identification of requirement -> implementation
o Only subset of the total requirement
 Learning period
o Time to know about the system
o Experience gaining of using the system
 nd
2 iteration
o With initiation of revised and refined requirements
o Take the existing system (1st iteration) and integrates it with the new requirements.
o Probably involves less effort
o Greater proportion of needs should be fulfilled.
 rd
3 iteration
o Environment has not changed before starting
o It could be a mandatory change, example new government regulation.
o Or additional improvement to achieve larger proportion of total requirement.

CT037-3.5-3-ISDT (Information Systems Development Trend) Page 1


CHAPTER 6: META MODELING CONCEPTS GENERIC FRAMEWORKS I: COMPARE
AND CONTRAST METHODS AND TOOLS

Gearing to the evolution:

i. Design does not have to be perfect


 Just a first attempt and good enough
 1st design often focuses on the core of the system
ii. It can allow or accommodates future change, or at least not impede such change
 Building in some flexibility or redundancy, or by parameterizing as much as possible
iii. It does not have to be comprehensive
 Just address part of the required system

Evolutionary Development vs SDLC:

SDLC Evolutionary Development


 Designed for ‘straight line development’.  First set of outline requirement.
 Assume that a complete solution will be  Identify the subset of the system.
achieved at the end of a linear sequence.  Assume detail will be changing and
 Detailed set of requirements is specified in changeable.
great detail.  Deliver something useful that need to
o Cannot be changed during change in later iteration.
development phase.

CT037-3.5-3-ISDT (Information Systems Development Trend) Page 2


CHAPTER 6: META MODELING CONCEPTS GENERIC FRAMEWORKS I: COMPARE
AND CONTRAST METHODS AND TOOLS

SPIRAL MODEL (BOEHM, 1988)

 Adopts the concepts of a series of incremental development.


O NOT evolutionary in iterative implementation.
O It is evolutionary only in its revisiting of each of the stage.
 Some stage visited again and again until complete system implemented
 Development spirals outward from the centre in a clockwise direction with each cycle of the
spiral.
O Resulting in successive refinement of the system.
 4 main activities -> represented by 4 quadrants

 Design flows.
 Failing to meet user
 Escalating costs
2nd objective phase 3rd risk analysis
 Losing sight of the
stage perceived system
Horizontal axis benefit
Represents the (Identify & resolution of risk)
commitment to the
project

1st planning 4th development  Might involve the


development of a
prototype (important
element in spiral
Vertical axis model)
Represents the cumulative  Later cycle become
more complete system
cost of development project

CT037-3.5-3-ISDT (Information Systems Development Trend) Page 3


CHAPTER 6: META MODELING CONCEPTS GENERIC FRAMEWORKS I: COMPARE
AND CONTRAST METHODS AND TOOLS

PROTOTYPING
Reduce cost

 More popular with the availability of software tools Speed up the process of
development of prototype
 Overcome some problems of traditional system analysis.
O Example: complaint that users only see their Information System at implementation
time and too late to make changes.
 Response to the user dissatisfaction.
 2 types of prototypes:
A) Throwaway Prototype
 Inefficient for operational user
 Incomplete, performing only some of the required tasks.
 Inadequate, sometimes being designed for 1 type of user / 1 purpose only.
 Poorly documented
 Unsuitable, or difficult to integrate with other operation system
 Incapable of scaling to the required volumes of operation used.
B) Evolutionary Prototype
 Slightly quicker applications development.
 Developers are building on something that already exists.
 To evolve the prototype into an effective, live running systems.
 Can handle larger volume.
 Speedy response
 High functionality
 Security required.
 Prototype useful where:
O The application area is not well defined.
O The organization is not familiar with the technology (hardware, software,
communications, designs, and so on) required for the application.
O The communications between analysts and users are not good.
O The cost of rejection by users would be very high, and it is essential to ensure that the
final version has got users’ need right.
O There is a requirement to assess the impact of prospective information systems.
 Form of prototype:
O Functional prototype
 Demonstrating, testing and evaluating the functionality of a system.
O Process prototype
 Demonstrating, testing and evaluating the process, sequences, response, etc of
a system.
O Design prototype
 Demonstrating and evaluating a variety of alternative designs/ solutions.

CT037-3.5-3-ISDT (Information Systems Development Trend) Page 4


CHAPTER 6: META MODELING CONCEPTS GENERIC FRAMEWORKS I: COMPARE
AND CONTRAST METHODS AND TOOLS

O Performance prototype
 Testing response time, loads, volumes.
O Organizational prototype
 Demonstrating and evaluating different organizational design, cross functional
work, organizational processes and their integration with Information System.

 Prototyping would be beneficial where:


O Unclear requirement
O Unstable requirement
O High innovativeness
O High system impact on the organization (although not safety critical)
O High system impact on users
O Relatively small project size
O Relative small number of users
O Relatively short project duration
O Where commitment of users to a project is required.

 Phases:
O Analysis phase
 Designed to understand the present system and to suggest the functional
requirement of an alternative system.
O Prototyping phase
 Construct a prototype for evaluation by users.
O A set of evaluation and prototype modification stages.
O A phase to design and develop the target system using the prototype as part of the
specification

CT037-3.5-3-ISDT (Information Systems Development Trend) Page 5


CHAPTER 6: META MODELING CONCEPTS GENERIC FRAMEWORKS I: COMPARE
AND CONTRAST METHODS AND TOOLS

RAPID APPLICATION DEVELOPMENT (RAD)

 Also addresses the problems associated with changing and evolving requirements during the
development process.
 General characteristic:
i. Incremental development
 Belief that not all system’s requirements can be identified and specified in
advance.
 Some requirements will only emerge when users see & experience the system.
 Requirements are also never seen as complete.
 Change and evolve over time with changing circumstances.
 RAD identifies the easy, obvious requirements and in conjunction with 80/20
rule (Pareto Principle)
 Uses these as the starting point for a development, recognizing that
future iteration and timeboxes will be able to handle the evolving
requirement over time.
ii. Timeboxing
 System development divided up into a number of components/timeboxes that
are developed separately.
 The most important requirement/largest potential benefit first and deliver
quickly.
 Traditional development vs. RAD development

Traditional Development RAD Development

 Variable elements -> Time &  Fixed elements -> Time and
Resource) Resource
 If projects are in difficulty, delivery  Allocate more resources is viewed
time is extended, resources are as counter productive.
allocated.  Functionality is variable.
 Functionality is treated FIXED.

CT037-3.5-3-ISDT (Information Systems Development Trend) Page 6


CHAPTER 6: META MODELING CONCEPTS GENERIC FRAMEWORKS I: COMPARE
AND CONTRAST METHODS AND TOOLS

 Focus:
 Speed of delivery
 Identification of absolutely essential requirements
 Implementation as a learning vehicle
 Expectation that the requirements will change in the next time box
iii. The Pareto Principle
 80/20 rule
 80% of a system functionality can be delivered with around 20% of the
effort -> to complete 100% of requirement

iv. MoSCoW rules To be justified


 To ensure a critical examination is made of requirement. and
 No ‘wish list’ are made by users categorized
 M = “The Must Haves”
 Without it -> not viable
 Eg. Critical Success Factor
 S = “The Should Haves”
 To gain maximum benefit these features will be delivered but the
project’s success does not rely on them.
 C = “The Could Haves”
 If time and resource allow these features will be delivered but they can
easily be left out without impacting on the project.
 W = “The Won’t Haves”
 These features will not be delivered.

v. JAD Workshop (Joint Application Development)


 RAD requires high levels of participation from all stakeholders.
 Can be achieved through JAD workshop.
 JAD is a facilitated meeting design

CT037-3.5-3-ISDT (Information Systems Development Trend) Page 7


CHAPTER 6: META MODELING CONCEPTS GENERIC FRAMEWORKS I: COMPARE
AND CONTRAST METHODS AND TOOLS

 To overcome the problems of traditional requirement gathering, in


particular interviewing users.
o To overcome the long time that the cycle of interview by getting
all the relevant people together in a short period to hammer
out decisions.
 Presence of important personnel -> executive sponsor  Who want the
system
 Commited to
vi. Prototyping achieving it
 An important part of RAD  Prepared to fund
it
 Used to help establish the user requirement  Give fast
 Or become the part/whole system decision

vii. Sponsor and champion


 Sponsor and champion commitment
 Important requirement for RAD
 Determine success
 Champion
 Lower level of seniority
 Who is also committed to the project
 Who understands and believes in RAD
 Is prepared to drive the project forward by their
o Enthusiasm
o Hard work

viii. Toolsets
 Any integrated computer software system that is specifically designed to
support a significant part of Information Systems development process of an
CASE tools Information Systems and the management of these tasks and procedure.
available to
 CASE (Computer Aided System (or Software) Engineering)
simplify various
stages of  Used to
Software  Speed up the process
Development
Life Cycle such  Improve productivity
as Analysis  Automated tool used for routing and time consuming tasks.
tools, Design
 Includes:
tools, Project
management  Clone existing code and modified it
tools, Database
 Utilize commercial packages
Management
tools,  Use of complete application and change the interface to produce the
Documentation desired results.
tools

CT037-3.5-3-ISDT (Information Systems Development Trend) Page 8


CHAPTER 6: META MODELING CONCEPTS GENERIC FRAMEWORKS I: COMPARE
AND CONTRAST METHODS AND TOOLS

AGILE DEVELOPMENT

 Aims -> flexible and quick development.


 Methodology:
o Extreme Programming (XP)
o Agile Modeling (AM)
o SCRUM
o Adaptive Software Development (ASD)
 What was valued in agile development?
o Individuals and interaction over processes and tools.
 Focus on the human role and relationships of developers.
(Traditional focus on more process & techniques)
o Working software over comprehensive documentation
 Frequent delivery of working software to keep the customer involved and
providing regular and rapid benefits.
 Producing the detailed documentation is not the priority.
o Customer collaboration over contract negotiation
 Focus on the relationship between the customers and developers -> work as a
team.
 Contract negotiation -> ‘requirements definition document’ (in/not in the
specification)
o Responding to change over following a plan
 Change is accepted as the norm and has to be addressed not suppressed.

 12 principles:
o The highest priority is to satisfy the customer through early and continuous delivery of
valuable software.
o Changing requirements are welcome, even late in development. Agile processes harness
change for the customer’s competitive advantage.
o Working software is delivered frequently, from a couple of weeks to a couple of months,
with a preference to the shorter timescale.
o Business people and developers must work together daily throughout the project.
o Projects should be built around motivated individuals. If the right environment and
support is provided, the developers can be trusted to get the job done.
o The most efficient and effective method of conveying information to and within a
development team is face-to-face conversation
o Working software is the primary measure of progress.
o Agile processes promote sustainable development. The sponsors, developers, and users
should be able to maintain a constant pace indefinitely.

CT037-3.5-3-ISDT (Information Systems Development Trend) Page 9


CHAPTER 6: META MODELING CONCEPTS GENERIC FRAMEWORKS I: COMPARE
AND CONTRAST METHODS AND TOOLS

o Continuous attention to technical excellence and good design enhances agility.


o Simplicity, the art of maximizing the amount of work not done, is essential.
o The best architectures, requirements, and designs emerge from self-organizing teams.
o At regular intervals, the team reflects on how to become more effective, then tunes and
adjusts its behaviour accordingly.
 Characteristic:
o Modularity on the development process level.
o Interactive, with short cycles enabling fast verification and correction to be made.
o Time bound, with iteration cycles from cycles from 1 to 6 weeks.
o Parsimony (extreme unwillingness to spend money or use resource) in the development
process removing all unnecessary activities.
o Adaptive with possible emergent new risks.
o Incremental process approach that allows functioning applications to be built in small
steps.
o Convergent approach to minimum risks.
o People oriented, eg. agile processes favour people over process and technology.
o Collaborative and communication working style.
 Agile approach:
1) Iteration
 Partitioning of a project into a set of parts.
 Can potentially deliver working software that implements a required
feature or part of a feature. Requirement gathering
 Each increment contains some / all traditional phase Analysis
Design
 Revisit these phases to improve project
Build
 “learn & development” idea Implement

2) Short life cycle


 Each iteration should be short (timescale depend on the nature of the project)
 Something useful is deliver to user.

3) Minimalism
 Developers only undertake activities that are going to help produce result in the
short term.
 “high level” activities -> any activity that does not lead to the goal is not
undertaken (eg. documentation)

CT037-3.5-3-ISDT (Information Systems Development Trend) Page 10


CHAPTER 6: META MODELING CONCEPTS GENERIC FRAMEWORKS I: COMPARE
AND CONTRAST METHODS AND TOOLS

Attempt to study and understand


4) Emergence
autonomous behavior originally
 Taken from complex adaptive system (CAS) obtained from the study of living
theory system in nature. (Eg. swarming of
 Try to engender thinking and behavior bees, flocking of bird)
 By providing a particular environment
 By following what termed generative rules (more a set of principles /
guide practices). A minimum set of
 Agile depends on individuals and their principles that should be
applied to generate
intelligence and creativity to discover ways of solving appropriate rules in
problems as they arise. specific circumstances as
 Benefit of generative rule vs. inclusive rule and when needed.
(Supposed to be simple)
 Flexibility, as the group can quickly
adopt to changing circumstances Rules attempt to lay down
 Robustness, as the behavior of rogue everything and specify
individual can be dealt with by group. what must be done in all
circumstances.
 Self- organization, as typically the group does not
require supervision / direction.

5) Risk acceptance
 Traditional -> risk are to be identified, assessed & avoided. By applying
restrictive management practices, opting out of any activities identified as high
risk.
 Agile -> missing opportunity, as high risk activities have the potential of
delivering large benefits.
 Market risk relate to”
 Product
 Timing Managing this risk is key.
 Consumer
 Technology Must be faster and more effective.
 Cost
 Benefit
 5 steps in agile:
 Identify the risk
 Assess their severity
 Prioritize the risks based on the severity
 Create action plan (responses) to deal with severe rises
 Continuously monitor to ensure the actions plans are achieving their
objective.

CT037-3.5-3-ISDT (Information Systems Development Trend) Page 11


CHAPTER 6: META MODELING CONCEPTS GENERIC FRAMEWORKS I: COMPARE
AND CONTRAST METHODS AND TOOLS

6) People Orientation
 Team of people and how they work together -> most important element
 People have different skill
 Good people will do a better job

7) Collaboration and communication


 Collaboration and communication between people -> key element
 Collaboration
 Working together to deliver something Common objective
 Avoid “us & them” blame culture Encourage rapid decision making
 Communication Sharing of knowledge
 Sending and receiving information
 Most effective -> face to face
 Development team are co-located with the business
o Also to reduce cost of moving information
o Increase speed at which the consequences and implications of
decision.

CT037-3.5-3-ISDT (Information Systems Development Trend) Page 12


CHAPTER 6: META MODELING CONCEPTS GENERIC FRAMEWORKS I: COMPARE
AND CONTRAST METHODS AND TOOLS

WEB BASED DEVELOPMENT

 Focus on user interface and multimedia nature of the web.


 Concepts:
1) Time pressure Short lived
 Competitive pressures Will be copied quickly
 Take short term advantage
2) Vague requirement
 Requirement often imprecise / not known
 Create through imagination and innovation
3) Prototyping
 Prototyping is the specification of requirement
4) Release orientation
 Earlier ideas / suggestion release
 RAD more relevant to Internet project
5) Parallel development
 Database development same time as graphical design
 Requirements analysis and design become hard to separate
6) Fixed architecture
 Complexity need to be tamed Allows team
 3 tier architecture Business data members to work
Separated parallel with a
Business logic
out degree of
User interface
independence

7) Coding your way out


 Programmer’s responsibility to code their way out of program.
8) Quality is negotiable
 Quality tends to be customer perspective and experience
9) Independence on good people Time pressure
 All members need to pull their weight as Small team

10) Need for structure


 Not to separate business analyst from software engineer

CT037-3.5-3-ISDT (Information Systems Development Trend) Page 13


CHAPTER 6: META MODELING CONCEPTS GENERIC FRAMEWORKS I: COMPARE
AND CONTRAST METHODS AND TOOLS

 Different between traditional IS development and Internet Project:

 Similarities:
o Database
 Rely on database
 Need skills to implement them
o Integration
 Internet application need to be integrated with enterprise application
 Eg. car ordering system -> communicate with manufacturer on requirement and
delivery date.

CT037-3.5-3-ISDT (Information Systems Development Trend) Page 14


CHAPTER 6: META MODELING CONCEPTS GENERIC FRAMEWORKS I: COMPARE
AND CONTRAST METHODS AND TOOLS

CONCLUSION

 Evolutionary System Development


o Staged / incremental approach
o Periodically delivers a system that is increasingly complete as it evolves.

 Prototype
o An approximation of the Information System to be built
o Scaled-down functional model and demostrate to the user to gain feedback

 RAD (Rapid Application Development)


o Follows principles and uses techniques:
 Incremental development
 Timebox
 MoSCoW rules
To achieve speedier development
 JAD workshops
 Prototyping
 Toolset

 Agile Development
o Aims at flexible and quick development of software
o Requirement are difficult to define
o Emphasizes interaction between people
o Less emphasis on documentation
o Collaborating with customers and responding to change in the development process

 Web-based IS Development
o Emphasis:
 Time pressure
 Design and user interface requirement
 Security concerns
 Customer orientation

CT037-3.5-3-ISDT (Information Systems Development Trend) Page 15

Вам также может понравиться