lecture 2: Managing system development Flashcards
Purpose
Design a strategy for a development and implementation based on knowledge about the context, the developers, the information systems and the methods.
formalised methods
system development life cycle (development process model) –>methods where you are planning, analyzing, designing and programming a system
example
iterative development, incremen tal development, evolutionary development, prototyping, SDCL
It is not unusual that a method is a combination of different process models.
Method-in-action
the methods actually used by the developers
developers
Business analyst, programmers etc.
important: its the people not the method that develops systems
abilities: communication across organization and customers, large knowledge (especially technology), creative and analytic skills, compositional skills (to imagine how the end product would work)
- all this while still make It understandable for non-tech people
the best developer is those who are open to complexity and uniqueness of the specific context, and can work from that - to a ready-made solution.
roles of method
Different rational and political roles.
rational roles can be: reduce complexity, facilitate project management, allow skill specialization, standardisation, economics, learning and quality
political roles can be: assure customers that the project is best-practice, as a power base for developers to be certified experts, contribute to professionalization etc.
the challenges
The high level of uncertainty and complexity,
Design and planning the system development process,
Knowning where you are – evaluating progress,
Integrating benefits realization into development,
Collaborating with the business
Information systems development method
systematic approach, based on a particular philosophy of systems development, which will guide developers on what steps should be performed and why these steps are important in the development of an information system.
formal method: plan-driven
Discrete stages with a specific end product Stage-limited commitment Signoff of end products In-stage quality control Specialization Bureaucracy Documentation
best to use when: Requirements are stable Technology is well known and mature Everything happens as one would expect We are not taking on much new or unknown We have done something similar before
to use when uncertainty is low (or complexity is so high that a kind of waterfall model is the best, even though uncertainty is high).
formal method: agile
Short iterations Feature planning Dynamic prioritization Feedback and change Teamwork Customer collaboration
We need agility to deal with uncertainty and turbulence in the context
how to use the methods
Methods must be chosen and adapted according to the the specific circumstances. -> project manager need to understand all the elements, and then design the optimal solution/strategy and development process (no one size fit all)
typical problems when implementing and developing information systems
Predictability: We have difficulties estimating have much time and other resources we need.
Costs: Development and implementation gets more expensive that originally expected.
Change: We have difficulties implementing the organizational changes that are needed to benefit from the new system.
Quality: New systems do often not work properly in the context they should support, users do not find the systems usable.
Value: We have difficulties realzing the expected benefits from IT investments, maybe nobody actually takes responsibility for doing so.
information system characteristics: purpose
Safety critical, competitive advantage, entertainment, transparency, accountability, operations etc. pose different requirements onto the development & implementation process.
information system characteristics: complexity
size, technical sophistication, interaction complexity, the complexity of users’ work, the complexity of business rules within the domain etc.
○ Different complexity, requires different methods
information system characteristics: reuse
f you can configure a more standard application (ERP-system) then the implementation and development process is much different from when making a unique system.
information system characteristics: systems and changes
huge changes, more attractive to use agile development
context
the context can be a single organization, several organizations OR even virtual organization and society.
Context is the foundation of IS development and implementation –> IS is developed in the context, and used in the context!!!!!
good to know:
no context are exactly the same
it is not possible to transform a system without any changes from one context to another (every context is unique)
difficult to make requirement specification (therefor difficult to use formalized methods in action)
analysis and design methods are used to understand a given context
understand the context
Understand the risk –> manage development AND understand changes –> implementation
changes in the context
changes are difficult and risky: the goal is to improve as much as possible with as little change as possible
- but changes supports a new way of thinking and helps getting benefits
strategies for changes: proactive vs. re-active
Proactive: an opportunity show up, and the organization change the context before the problem occurs.
Re-active: the organizations react to the problem in the context when it occurs.
strategies for changes: problem-solving vs. innovation
Problem solving: solving in the current business process, fixing errors, optimizing the use if IS. Here analysis plays a big role
Innovation: changes to in a creative way create a new context. Here it is not just about fixing errors, but to be creative and design new ideas.
strategies for changes: incremental vs. radical
Incremental: changes accomplished in small steps (problem solving)
Radical: changes accomplished in major steps, which fundamentally changes the context (innovation). More risk.
the right method
The right method depends on resources, constraints, needs, whishes, capabilities and nature of the system
It have to changed whenever the context change, to have the right fit. This is one of the major reason behind the many project delays and budget overruns
capabilities in a project:
analytical skills, creative skills, communications skills, knowledges, compositional skills etc. Are crucial if the organizations want to end up with a good project.