Manager Decision Making
Manager Decision Making
Manager Decision Making
The system development process, also known as the system development life cycle,
is a term used in the development of software where a set of methodical processes,
activities, or phases are used to develop and implement a system. With the rapid
development and constant evolution of systems technology to date, different
development processes have been established and tried
Information Gathering
In this important step, the problems, objectives, and resources needed are outlined.
Participating stakeholders such as clients, developers, consultants, and end-users
come together and engage in brainstorming. If the software is not brand new there will
be less information and data gathering and more focus on improvements.
Analysis
At this point, the end-user requirements have been clearly formulated. Feasibility
studies may be carried out to analyze the economic and technical impacts of the
project. Information on competitive products is also collected. Viability of the project is
established and the project is broken down into workable segments.
Design
With clearly defined workable segments, the system design is developed. Customer
requirements define the different elements of the system. Details on the functionality,
techniques, and logic of the process are formulated.
Implementation
This is the actual construction phase of the system. The logical part of the system is
formulated and the building of any hardware is accomplished. The programming
language is already decided and the codes are written.
Deployment
The logic of the system is completed and ready to be deployed with any accompanying
hardware. The customer's needs are vested and various installation procedures are
carried out. The time it takes for the system to actually go live will depend on its
complexity. End-user training is organized to ensure proper use of the system.
System Testing
The different workable parts of the system are brought together, making a whole
integrated system. Various inputs are collected, analyzed, and fed into the system. Real
users may be employed to carry out testing. The main aim of the testing phase is to
ensure that the customer's requirements are met and overall customer satisfaction
achieved. No technical expertise, knowledge of hardware or software are needed.
Specialized personnel may be brought in to conduct more in-depth and robust testing.
=============================
Ad-hoc Development
As the name depicts this is an unplanned process of systems development. Ad-hoc
system development (ASD) normally engages participants with some level of expertise
and familiarity with the problem. It depicts a rather chaotic process and is characterized
by constant changes and modifications as the process develops.
Information Technologies
Software technologies
Including operating systems and DBMS
MS Words improves the quality of management reports
Window XP controls operation of a computer
JDK provides platform for developing web application
Hardware technologies
Mobile phone support mobile data transfer
802.11 provides the standard for wireless local area networks
USB flash memory provides an alternative way to store information
System development
Object-oriented development
Component-based development
Unified modeling language
Other technologies
Artificial Intelligence
Parallel processing architecture
Optimization algorithm
Figure 2-2
====================================
HIERARCHY & NETWORKS
Traditional business models have relied on a hierarchy – a model in which a steady
environment was created in order to maximise efficiency and productivity. However, in
the new age of ‘always on’, hierarchal models can often be a hindrance to a business’s
ability to be agile and innovate.
The network business model is a system for the digital age. Denoted by a flatter
management structure and a change in thinking and approach to business, the network
is about reaching as many people as possible in order to maximise collective knowledge
and information.
Addressing the ‘always on’ customer requires a new type of business model which
emphasises collaboration and universal knowledge. Businesses need to develop
strategies that integrate siloed internal resources. This will trigger a collaborative
network of partners, thought leaders, brand ambassadors, and suppliers.
WHAT IS REENGINEERING?
Software Re-engineering is a process of software development which is done to
improve the maintainability of a software system. Re-engineering is the examination and
alteration of a system to reconstitute it in a new form. This process encompasses a
combination of sub-processes like reverse engineering, forward engineering,
reconstructing etc.
Re-engineering is the reorganizing and modifying existing software systems to make
them more maintainable.
Objectives of Re-engineering:
To describe a cost-effective option for system evolution.
To describe the activities involved in the software maintenance process.
To distinguish between software and data re-engineering and to explain the
problems of data re-engineering.
Steps involved in Re-engineering:
1. Inventory Analysis
2. Document Reconstruction
3. Reverse Engineering
4. Code Reconstruction
5. Data Reconstruction
6. Forward Engineering
Diagrammatic Representation: