Information System Development
This report provides a critical evaluation of methodologies and tools that are used to improve the practice of information system development. This report will compare and contrasts each methodology in relation to Foxton property management project and justify the chosen methodology.
Definition of methodology
“A methodology is a collection of: procedures, tools, and documentation aids which will help the systems developers to implement a new information system. It is usually based on some philosophical view; otherwise it is merely a method, like a recipe.” (Avison and Fitzgerald, 1991:4)
There were many varieties of SDLS (System Development Life Cycle). In the late 1960s, National Computing Centre was established by the UK government to suggest standard for developing computer application. SSADM was introduced as a development of structured methods, inheriting the design and coding phases from the waterfall lifecycle. It is similar to the principles of SDLC. (Avison & Fitzgerald, 2006 p.35).
SSADM – Structured Systems Analysis and Design Method
SSADM is the UK government’s standard method for carrying out the system analysis and design stages of an IT development project. It was commissioned by the CCTA (Central Computing and Telecommunications Agency) in a bid to standardise the IT projects being developed across government departments. (Eva, 1994)
SSADM is a structured methodology which is mostly used in the analysis and design stages of system development. SSADM is not directly concern with the project construction, testing and implementation of software. (Downs et al., 1992)
It is a data driven concept which concentrates on data modelling. Each phase consists of a definite set of activities and deliverables that must be accomplished before the following phase can begin. SSADM adopts the Waterfall model of systems development, where each phase has to be completed and signed off before subsequent phases can begin. (Hutchings, 1996).
The main aim of this method is to produce systems that satisfies user requirements and are delivered on time. The system must provide some business benefits and must be flexible to adapt to change is business environment.
SSADM revolves around the use of three key Modules
- Logical Data Modelling,
- Data Flow Modelling
- Entity/Event Modelling
Each of these three system models provides a different viewpoint of the same system, and each viewpoint is required to form a complete model of the system being designed. The three techniques are cross-referenced against each other to ensure the completeness and accuracy of the whole application.
Modelling techniques are extremely useful in tackling the complexity found when attempting to analyse and understand a system. Models are also extremely useful communication tools. The dataflow concept able to identify the process involves identifying what processing is done, when, how, where and by whom. All this Complex ideas and concepts can be captured on paper and can be shown to users and clients for clarification and feedback.
DSDM involves in the analysis and design stage of the system, therefore the data modelling should be accurate and help to eliminate any flaws in the system design as the system is developed by a third party or contractors.
SSADM consists of five core modules, which are further broken down into seven stages which are in turn broken down into steps and tasks.
The five core modules are
- Feasibility study (FS)
- Requirements Analysis (RA)
- Requirements Specification (RS)
- Logical System Specification (LS)
- Physical Design (PD)
Benefits of SSADM
Timelines: planning at early stage enable SSADM to manage and control project well thus delivering the project on time. Time is money; therefore stakeholders can make decision based on the time and budget to commission the project.
Usability: SSADM emphasis on the analysis of user needs and requirements. (Avison & Fitzgerald,2006). The requirements captured during the requirement analysis and requirement specification stage cross-referenced against the system modules to eliminate mistake in the application.
Respond to changes: business objectives and business needs are considered while the project is being developed. This offers the possibility to tailor the planning of the project to the actual requirements of the business.
Quality: One step at a time means fewer mistakes likely to occur and quality level is set at beginning of each stages and constantly checking the system to improve the overall quality.
Cuts costs: SSADM separates the logical and the physical systems design. So the system does not have to be implemented again with new hardware or software.
Drawbacks of SSADM
Time consuming: danger of over-analysing and waiting for each stage to finished and signed off can be very time consuming.
Cost: A lot of focus on analysis phase can cause project to go over budget and project delay. This is not viable for Foxton Property management as time and money is an issue. This could set them back financially as they are small firm with few branches across London.
Lack of flexibility: SSADM does not intend to change the specifications that were made in advance after the review of the stage had been completed. This could lead to problem later as the end result does not meet the business requirements. Lack of flexibility due to poor iterative process can stop Foxton property to grow in the future and adopt new requirements.
Lack of communication: Does not cover construction, implementation and testing therefore there is a communication break down between the analyst and system designers thus vital information and interaction is lost.
DSDM – Dynamic System Development Method
The Dynamic Systems Development Model was developed in the U.K. in the mid-1990s. It is the evolution of rapid application development (RAD) practices. (Highsmith , 2002).
DSDM emphasis on continuous user involvement in an iterative development and incremental approach, this approach is responsive to changes in requirements as users provide continuous feedback on what need to be improved (Stapleton, 1997).
Despite the requirements changes, time is fixed for the life of project and resources are fixed. Hence the development of software system satisfies the business requirements on time and on budget. D.J & I.J. Tudor (2002) assert that DSDM implement the concept of 80/20 rules and follow the fundamental assumption of “Nothing is built perfectly first time”.
DSDM consists of five phases:
- feasibility study
- business study
- functional model iteration
- system design and build iteration
- implementation
DSDM projects are limited by time and resources, and plans accordingly to meet the business needs. Hence in order to achieve these goals, DSDM consist of nine principles.
The nine principles are
- Active user involvement is imperative.
- DSDM teams must be empowered to make decisions.
- The focus is on frequent delivery of products.
- Fitness for business purpose is the essential criterion for acceptance of deliverables.
- Iterative and incremental development is necessary to converge on an accurate business solution.
- All changes during development are reversible.
- Requirements are baseline at a high level.
- Testing is integrated throughout the lifecycle.
- A collaborative and cooperative approach between all stakeholders is essential.
The nine principles are essential to any DSDM implementation, ignoring one of them will break with the frameworks philosophy and significantly increase project risks (D.J & I.J. Tudor, 2002). Some of the steps may be ignored or modified to fit a project layout.
Benefits of DSDM
Targeted expenditure: The method able to achieve the project objective with in the business budget and time line.
Faster delivery: current requirements of system are developed first and the future requirements are tacked later in the process.
User involvement and commitment: active user involvement in iterative and incremental process, thus reduce the risk of developing wrong system.
Systems fit for purpose: system is more likely to meet user’s business requirements
Flexible build process: requirements and previous steps can be revisited as part of iterative approach.
Efficient use of resources: use of four core techniques able to use the resources efficiently.
Drawbacks of DSDM
Management: It is difficult to coordinate large project as it involves lot of user interaction and planning. Can result in a never-ending project if not managed properly.
Timeline; Use of prototyping as one of the tools could delay the project as this will have impact on the fundamental philosophy of DSDM delivering the project on time and meet the budget.
Expectation: User might expect the end product to be same as prototype which could result in decommissioning the project or cost more resources to start the cycle again.
Poor Interaction: User collaboration might not be at disposable in the process as the business doesn’t want to dispose their resources.
Poor documentation: Project is not document thoroughly due to requirements evolve through out the stage. This might have impact on the users who will not be familiar with the new system and require guidance and training.
Functionality of the system is compromised as construction of the system will drive towards giving the customer the minimum system that they need. It will focus on those that seem to be central or key to achieve the deadline and restricted budget.
RUP – Rational Unified Process
“The Rational Unified Process is a software engineering process developed and marketed by Rational Software. It is a disciplined approach to assigning and managing tasks and responsibilities in a development organization. The goal of this process is to produce, within a predictable schedule and budget, high-quality software that meets the needs of its end users.” (Kruchten, 2003, P.17).
RUP is describes as an architecture-centric, incremental and iterative process (Avison & Fitzgerald, 2002). This allows user to see the detail view of system before it’s built. The process is also incremental and iterative as the user’s requirements can not be fully defined at one stage, requirements evolver over the time. Therefore continuous iterative and incremental reduce the risk of system failure and meet the system objectives.
RUP project lifecycle consist of four phases:
- Inception : establish the business case for the system and the project scope
- Elaboration: analyse the problem domain, form architecture of project, and eliminate the highest risk elements of the project.- Use of use case diagram
- Construction: development of each components identified by use case.
- Transition: project move from development to end user. This includes training, maintenance and validate against user’s expectation.
RUP captures many of the best practices in modern software development and presents them in a tailor made form to suite wide range of project and organisation. (Kruchten, 2003). It consist of six practices
- Develop software iteratively.
- Manage requirements.
- Use component-based architectures.
- Visually model software.
- Continuously verify software quality.
- Control changes to software.
Benefits of RUP
Flexibility: The approach considers the requirement change and takes it into account. If the user identified any new requirements or wanted to improve the proposed system, the changes can be integrated.
Quality Build: With the iterative approach, risk are identified and Eliminated during integration at early stage. This will benefit the business in terms of time and money.
Visually Model: RUP allow you to understand the system better via use of use case diagram. These models will help to understand the complexity of systems. It does not only identify the requirements but also the actor who interact with the system.
Efficient use of resources: Resources and various skills are employed fully during the entire lifecycle as it follows the spiral approach.
Due to continuous improvement over several interactions, the architecture is more robust thus Iteration facilitates reuse of common parts.
Drawbacks of RUP
Delay: System development can be delay due to several iterations, Can result in a never-ending project. RUP need to be managed and boundary need to be defined in order to construct the project successfully with iterative manner that fall within the boundary.
Generic: RUP adopt all best practises, therefore it needs to be customised for the organisation and project before using it. This could be time consuming and project could be delay.
Development Framework: It is a development process framework, not a software process. It might not be suitable for all scenarios. It fails to provide a clear implementation guideline for the construction of project.
RUP is very much development focused process and that is why it can not see anything beyond the development boundary like enterprise level issues and different management aspects of the organizations.
SSM – Soft System Methodology
The methodology was developed from earlier systems engineering approaches, by Peter Checkland and Brian Wilson. SSM is used for applying Systems Thinking to non-systemic situations. It is a way of dealing with problem situations in which there is a high social, political and human activity component (Tudor, 1995).
Soft Systems Methodology applied in organizational situation where there is a high social, political and human activity component. SSM attempts to solve the problem situation between groups of stakeholders. SSM provides a framework for tackling such situations rather than set out to solve a pre-defined problem. (Avison & Fitzgerald, 2002).
Soft system framework consists of seven Stages:
- The problem situation: Unstructured
- The problem situation expression
- Root definition of relevant system
- Conceptual models
- Comparison
- Feasibility, desirable changes
- Action to improve the problem situation
These relevant systems are logically defined by constructing ‘root definitions’ which are then used to generate ‘conceptual models’ of the selected systems. Different conceptual models representing different viewpoints are then used as the basis of a debate, which through an ‘appreciative process’ can lead to feasible and desirable change and then to action. (Wilson, 2001)
Using the CATWOE checklist technique, The Root definition is created which consist of six elements.
CATWOE:
- Customer: Everyone who may gain benefits from a system
- Actor: User who interact with the system
- Transformation process: this is the conversion of input into output
- Weltanschauung: word view of transformation process in meaningful context
- Owner: the person who own the system
- Environmental constraints: organisation policies, legal and ethical issues.
CATWOE help to analysis the problem situation and helps to avoid early conclusions in attempt to solve a problem.
Benefits of SSM
Structured: SSM provide a structure to solve complex organizational and political problem situations, it help the organisation to solve problem within the organisation by forcing user to look for a solution that is more than technical.
Use of Technique: Specific techniques such as CATWOE help to identify the problem with ease with out jumping to conclusion
Drawbacks of SSM
SSM requires participants to adapt to the overall approach. This could not be viable for a busy environment where user participant is not at disposable.
It is revolve around people problems which are not appropriate for the proposed technical software development project.
There is a chance of narrowing the scope of the investigation too early. This could have impact later on the project.
It is difficult to assemble the richest picture, without imposing a particular structure and solution on problem situation. The solution might not apply to all participants which could cause disagreements.
USDP – Unifies Software Development Process
USDP is use-case driven, architecture-centric, iterative and incremental generic software engineering process. (Jacobson, et al. 2001)
USDP process is component based due to it iterative approach. Requirements are captured using Unified Modelling Language (UML). The Unified Process is not simply a process; it could be customized for specific organizations or projects.
USDP is similar to RUP as it has the same four phases. Each phase may have one or more iterations. Iteration is like mini- project, USDP specifies 5 core workflows of iterative process
- Planning
- Analyst
- Design
- Integration
- Test
Benefits of USDP
User Case driven: Uses of use case study provide a clear picture of analysis system in meaningful way which could be understood by novice users to get feedback. It drives the design, implementation and testing of the system. This reduces the complexity through out the project.
Architecture-centric: it allows integration as it encourages component reuse. This help developer to reuse the components which are designed and tested to fit together. This reduces the cost of redeploying and repetitive iterative process.
Iterative and incremental: iterative process allows flexibility to eliminate flaws in the system which could help to construct a successful project. Specific use of iteration helps to achieve greatest economy in development.
Drawbacks of USDP
Real projects rarely follow a sequential lifecycle. The iterative process is time and cost consuming. This is not viable for small proposed system. Increments may be smaller or result in large project due to repetitive.
Justification of chosen Methodology
Based on the research into methodologies, the report comes to conclude that the project will adapt the DSDM Methodology as it is more tailored towards the project needs.
The reason for choosing DSDM is because it also facilities the option to amalgamate other techniques and evolve from rapid application development (RAD) .DSDM emphasis on continuous user involvement through iterative process and delivery the product on time and under budget. Use iterative process encourages active user involvement, this would help the proposed system to identify the required requirements and encourage team work which acts as a motivation factor for the success of the project. This iterative process will help the project to eliminate flaws in the system with the aid of user involvement.
During the meeting with the management of Foxton property, timeline and budget of the system were stressed. DSDM will facilitate this issue and can compromise of functionality of the system with the use of 80/20 technique. But it facilitates future improvement and new requirements can be added due to its iterative process.
The five stage of product life cycle: The first two stages, Feasibility Study and Business Study investigate the current system and determine weather it’s feasible. This can be used as a decision making tools for the management and the project coordinator. The evidence can be used to negotiate time and resources. After these phases have been concluded, the rest of the stages are developed iteratively and incrementally in the Functional Model Iteration, Design, and Build Iteration and Implementation stages. This will help the project to adopt requirements changes.
Chosen Techniques And Justification
The techniques will be use in combination with the DSDM approaches are;
Timeboxing: this will help to control the amount of time taken to complete a stage. The division of time and distribution of work accordance to prioritisation to ensure that work is equally distributed from the start of the project to the deadline. Making sure more time is spent on the requirements that are of higher importance. This will help the project to complete on time. (Stapleton, 1997)
Restriction of timing could put restrain on the success of project. Some of the requirement could be left out due to time constrain. The timeboxing technique should be planned well and include “lack time” as this will help the process to be flexible if a required more time without having any effect on other development process.
MoSCoW: When the lists of requirements have been identified MoSCoW will be used to prioritise each requirement, so that development can be constructed (D.J & I.J. Tudor, 2002). Again we need to consider priorities of each requirements to the level of important it has to the project thus it require an in-dept study and careful planning.
Prototyping: Prototypes evolve to become the working system with the use of incremental delivery of component system. Thus enable rapid development. it is an effective method to communicate with user, hence providing feedback which could be implemented to improve the system (Stapleton, 1997). This is a cost effective process and efficient method for fix and repair the system due to iterative process.
Facilitated Workshops: “are held to achieve quickly a particular purpose within a system development project”. (D.J & I.J. Tudor, 2002). During the process requirement list is compiled with mutual consent where ground rules are established. Using an interactive workshop environment, effective group dynamics and visual aids, facilitated sessions are designed to extract high quality information
How my project supports the business
The key problems have been identified within the company were; there is a need to keeping large record of date on property and customers. There is large volumes of information are held manually and there is dependency on employees. There is no facility to keep the record and carry out a search function to match client criteria. DSDM can provide the company with a solution to build an automated system to assist with everyday activities. The project will allow the company to expand and provide high quality of service. It also provides and opportunity to become a web based property management system. This will help various breaches’ employees to login remotely and carryout activities, this will eliminate duplication data.
References/Bibliography
Further Reading
Kruchten, P., (2003), the rational unifies process: an introduction, 3rd edition, USA, addison-Wesley, pearson education.
Down, C, et al., (1992), structured system analysis and design method, 2nd edition, Herfordshires, prentice hall international.
Wilson, B. (2001), Soft System Methodology, West Sussex, John Wiley&sons.
Avison, D and Fitzgerald, G. Information Systems Development, Methodologies, Techniques and Tools, 3rd ed, 2003, McGraw-Hill, Maidenhead, UK.
Avison, D and Fitzgerald, G. Information Systems Development, Methodologies, Techniques and Tools, 4th ed, 2006, McGraw-Hill, Maidenhead, UK.
Booch, G. Object-Oriented Analysis and Design with Applications, 2nd ed,1998,
Addison Wesley Longman Inc,
Checkland, P. and Scholes, J. Soft Systems Methodology in Action, 1990,
John Wiley & Sons, Chichester, UK.
Downs, E et al. Structured Systems Analysis and Design Method: application & context, 2nd ed.1992, Prentice Hall, Hertfordshire, UK.
Goodland, M. and Slater, C. SSADM Version 4: A Practical Approach, 1995,
McGraw-Hill, Maidenhead, UK.
Kruchenten, P. The Rational Unified Process: An Introduction, 3rd ed,2004,
Pearson Education Inc, Boston, USA.
Martin, J. Rapid Application Development, 1991,
Halliday Lithograph, USA.
Robinson, K. and Berrisford, B. Object-Oriented SSADM, 1994,
Prentice Hall, Hertfordshire, UK.
Stapleton, J. Dynamic Systems Development Method, 1997,
Pearson Education Limited, Reading, UK.
Tudor D.J and Tudor I.J Systems Analysis and Design A Comparison of Structured Methods, 1995, Palgrave, Oxford.
Wilson, B. Soft Systems Methodology: Conceptual Model Building and its Contribution, 2001, John Wiley & Sons, Chichester, UK.
Web Pages
Norfolk, D (2005), Understanding DSDM, .[Online] Available from: http://www.pcsupportadvisor.com/nasample/D1121.pdf [Accessed 01/01/ 2008].
Computer-aided software engineering [online] http://www.asp.net/getstarted/default.aspx?tabid=61[Accessed at 8th January]
University of Glamorgan, Introduction to SSADM,[Online] Available From: www.comp.glam.ac.uk/pages/staff/tdhutchings/chapter4/CHAPTER4.PPT.[Accessed 01/01/ 2008].
Schumacher.M (2001), Report on the use of SSADM, [Online] Available from: http://www.hausarbeiten.de/faecher/hausarbeit/inb/20280.html [Accessed 02/1/ 2008].
Hutchings.T (1996), Introduction to Methodologies & SSADM [online], University of Glamorgan, Available from: http://www.comp.glam.ac.uk/pages/staff/tdhutchings/chapter4.html [Accessed 02/1/ 2008].
Webopedia, (2003), SSADM, [Online] Available from: http://www.webopedia.com/TERM/S/SSADM.htm, [Accessed 02/1/ 2008].
School of information and library science, (…), Introduction to systems analysis, [Online] Available from: http://www.ils.unc.edu/courses/2006_fall/inls461_001/fall06/db/sysanalysis.pdf. [Accessed 02/1/ 2008]
Zuehlke Engineering, (2001), Unified Software Development Process, [Online] Available from: http://www.cs.ucl.ac.uk/staff/ucacwxe/lectures/3C05-01-02/aswe5.pdf. [Accessed 03/01/ 2008]
Noe, P.(2000), the Unified Software Development Process, [online] san Antonio, Available from: http://www.saspin.org/Saspin-Nov2000_Noe.pdf. . [Accessed 03/01/ 2008]
Ucl Campus Science (2004), Unified Software Development Process, [online], UCL, Available from: http://www.cs.ucl.ac.uk/staff/ucacwxe/lectures/3C05-03-04/USDP.pdf. [Accessed 03/01/ 2008]
Perry. I, (2007), Dynamic Systems Development Method, [online] The UNIVERSITY OF HULL SCARBOROUGH, Available from: http://itsy.co.uk/ac/0708/Sem1/44222_ISD/Lec/7_Dsdm.ppt. [Accessed 03/01/ 2008]
Benjamin J. J. Voigt (2004), Dynamic System Development Method, [online], Department of Information Technology University of Zurich, Available from: http://www.ifi.uzh.ch/rerg/fileadmin/downloads/teaching/seminars/seminar_ws0304/14_Voigt_DSMD_Ausarbeitung.pdf. [Accessed 03/01/ 2008].
PC Network Advisor,( 1998), Understanding DSDM, [online], Available from: http://www.pcsupportadvisor.com/nasample/D1121.pdf. [Accessed 03/01/ 2008].
Uppala,L,v. (2003), DSDM, [online], Available from:cs.ua.edu/631/DSDM.ppt,[Accessed 03/01/ 2008].
Richards.K, (2004), DSDM in a nutshell, , [online], Keith Richards Consulting ,Available from: www.keithrichardsconsulting.co.uk/cms/document/DSDM_in_a_nutshell_2004_conference___2005_edition.ppt. ,[Accessed 03/01/ 2008].
DSDM Consortium, (2003), DSDM Business Focused Development An introduction, [online], Available from: www.dsdm.org, [Accessed 03/01/ 2008].
DSDM Consortium, (2007), DSDM Enabling Business Agility, [online], Available from: www.dsdm.org, [Accessed 03/01/ 2008].
Selectbs, (2006), What is DSDM?, [online], Available from: http://www.selectbs.com/glossary/what-is-dsdm.htm. [Accessed 03/01/ 2008].
Næsset, R.l & Bhargava.A , (2003), Electronic Process Guidesin Connection With the Use of RUP at ConsultIT, [online], Available from: http://www.idi.ntnu.no/grupper/su/fordypningsprosjekt-2003/fordypning2003-Bhargava-Nasset.pdf. [Accessed 03/01/ 2008].
A Rational Software Corporation (1999), Rational Unified Process Best Practices for Software Development Teams, , [online], Available from: http://www.augustana.ab.ca/~mohrj/courses/2000.winter/csc220/papers/rup_best_practices/rup_bestpractices.pdf. [Accessed 03/01/ 2008].
Mariosalexandrou( 2004), Rational Unified Process (RUP) Methodology, [online], Available from: http://www.mariosalexandrou.com/methodologies/rational-unified-process.asp. [Accessed 02/01/ 2008].
otug (1999), The Rational Unified Process, [online], Available from: http://ootips.org/rup.html. [Accessed 02/01/ 2008].
University of Cambridge (…),Soft Systems Methodology, [online], Available from: http://www.ifm.eng.cam.ac.uk/dstools/control/softsm.html. [Accessed 02/01/ 2008].
Weeks. P (2005), Soft system methodology (Checkland), [online], Available from:http://www.12manage.com/methods_checkland_soft_systems_methodology.html. [Accessed 02/01/ 2008].
Drewry. T, (2006), System Development, Methodologies and Modeling, [online], Available from: http://www.cems.uwe.ac.uk/~tdrewry/modeling.htm#Basic%20DFD%20Notations [Accessed 02/01/ 2008].
Order Now