Unit 3: Information System
Development
Objectives:
• Differentiate the system life cycle from system development methodology.
• Generate the principles of system development.
• Report problems, opportunities, and directives— the triggers for systems
development projects.
• Examine the PIECES framework for categorizing problems, opportunities, and
directives.
• Organize the essential phases of system development. For each phase,
describe its purpose, inputs, and outputs.
Topic 1: Life Cycle versus Methodology
• The terms "life cycle" and "methodology" are
often used in the context of software or
system development, but they refer to
different aspects of the development process.
Topic 1: Life Cycle versus Methodology
Life Cycle:
A life cycle, also known as a development life cycle or software development life cycle
(SDLC), refers to the stages through which a software product or system passes from
its conception to its eventual retirement. It represents the overall framework or
structure of the development process. The stages of a typical SDLC may include
initiation, planning, analysis, design, implementation, deployment, and maintenance,
as described in the previous response. The life cycle provides a high-level view of the
development process and helps organize and manage the activities involved in
creating and maintaining a software system.
Topic 1: Life Cycle versus Methodology
Methodology:
A methodology, on the other hand, refers to the specific approach, set of
practices, techniques, and procedures used within each stage of the
development life cycle to accomplish its objectives effectively. Methodologies
provide detailed guidelines and instructions for performing tasks, making
decisions, and managing resources throughout the development process.
Examples of software development methodologies include Waterfall, Agile,
Scrum, Lean, and DevOps.
Topic 2: Principles of System Development
The principles of system development provide a set of guidelines and best
practices to ensure the successful planning, design, implementation, and
maintenance of information systems
Topic 2: Principles of System Development
User Involvement: Involve users throughout the development process to ensure that the
system meets their needs and expectations. User feedback and collaboration are essential for
creating a system that is user-friendly and effective.
Iterative and Incremental Development: Break down the development process into small,
manageable iterations or increments. This allows for continuous improvement, feedback, and
adaptation to changing requirements.
Clear Requirements Definition: Clearly define and document system requirements, including
functional, non-functional, and technical requirements. This helps ensure that the system meets
stakeholders' expectations and minimizes scope creep.
Topic 2: Principles of System Development
Modularity and Reusability: Design the system with modular components that can be reused
across different parts of the system or in future projects. This improves maintainability,
scalability, and flexibility.
Quality Assurance: Implement quality assurance processes and testing throughout the
development life cycle to identify and address defects early. This helps ensure that the system
meets quality standards and performs reliably.
Risk Management: Identify potential risks and uncertainties associated with the development
process and the system itself. Develop strategies to mitigate risks and minimize their impact on
project success.
Topic 2: Principles of System Development
Adaptability and Flexibility: Design the system to be adaptable and flexible to accommodate
changes in requirements, technologies, and business needs over time. This helps future-proof
the system and extend its lifespan.
Documentation: Maintain comprehensive documentation throughout the development process,
including requirements, design specifications, test plans, and user manuals. Good
documentation facilitates communication, collaboration, and knowledge transfer among team
members and stakeholders.
Collaboration and Communication: Foster open communication and collaboration among
team members, stakeholders, and users. Effective communication helps ensure that everyone
is aligned with project goals and expectations.
Topic 2: Principles of System Development
Continuous Improvement: Encourage a culture of continuous improvement
and learning within the development team. Reflect on past experiences, gather
feedback, and incorporate lessons learned into future projects to enhance
efficiency and effectiveness.
By adhering to these principles, organizations can increase the likelihood of
successfully delivering high-quality systems that meet stakeholders' needs and
contribute to their overall business objectives.
Topic 3: The PIECES Problem Solving Framework
The PIECES Problem Solving Framework is a structured approach to
identifying, analyzing, and solving problems, particularly in the context of
systems, processes, and operations. It provides a way to break down complex
issues into manageable components.
Topic 3: The PIECES Problem Solving Framework
The acronym PIECES stands for:
P - Performance: Issues related to how well the system, process, or operation
is performing. This includes speed, efficiency, and effectiveness. Are there any
bottlenecks or delays? Is the system meeting performance expectations?
I - Information: Problems associated with the flow, accuracy, or accessibility of
information. Is there missing, incorrect, or difficult-to-understand data? Are
decision-makers receiving the right information at the right time?
Topic 3: The PIECES Problem Solving Framework
The acronym PIECES stands for:
E - Economics: Concerns about cost, resources, or financial performance. This
looks at the economic implications of the problem. Are resources being wasted?
Is the solution too expensive or not cost-effective?
C - Control: Issues related to governance, compliance, and the ability to control
processes or outcomes. Are there gaps in control mechanisms, oversight, or
monitoring?
Topic 3: The PIECES Problem Solving Framework
The acronym PIECES stands for:
E - Efficiency: Focuses on improving the use of time, energy, and resources. Is
the current process or system working in the most efficient way possible? Could
there be less effort involved to achieve the same or better results?
S - Service: Examines customer service, satisfaction, or user experience. Is the
system or process delivering adequate support to its users or customers? Are
there service-level issues or unmet expectations?
Topic 3: How to Apply the PIECES Framework?
Identify the Problem: Begin by using the PIECES categories to analyze the problem
from multiple angles. This helps ensure no aspect of the issue is overlooked.
Diagnose the Root Cause: Once the issues have been identified, you can drill down
into each category to find the root causes.
Develop Solutions: Use insights from the framework to develop targeted solutions
that address each aspect of the problem.
Implement and Monitor: After implementing a solution, monitor it using the PIECES
categories to make sure it effectively addresses the issues.
Topic 4: Building Blocks View of the System
Development
Is a framework that helps break down complex systems into smaller,
manageable components or "blocks."
Each block represents a distinct part of the system that plays a specific role
in the overall functioning of the system.
This approach is helpful for system designers, developers, and engineers to
organize, understand, and work on the different parts of a system in a
modular and systematic way.
Topic 4: Key Building Blocks in System
Development
Requirements Gathering and Analysis
This is the first step in system development. It involves
gathering all the necessary information to understand what
the system needs to accomplish. This can include interviews
with stakeholders, analyzing existing systems, or reviewing
business goals.
Topic 4: Key Building Blocks in System
Development
System Design
In this block, the overall architecture and design of the system
are created. This includes defining the system's components,
modules, data flow, and how they interact.
Topic 4: Key Building Blocks in System
Development
Development and coding
The coding block involves translating the design
specifications into working software. Developers write code in
programming languages to implement the system’s features
and functionalities.
Topic 4: Key Building Blocks in System
Development
Testing
Testing involves identifying and fixing bugs or issues in the
system before it’s fully deployed. It includes different types of
testing, such as unit testing, integration testing, and user
acceptance testing (UAT).
Topic 4: Key Building Blocks in System
Development
Deployment
It refers to the process of installing and configuring the
system in its real-world environment, whether that’s on user
machines, servers, or in the cloud.
Topic 4: Key Building Blocks in System
Development
Maintenance and Updates
After the system is deployed, the maintenance block ensures
that the system continues to function properly by providing
ongoing support, fixing bugs, and making improvements.
Regular updates might also be needed to adapt the system to
changing business needs or technology.
Topic 5: A Taxonomy for System Development
Methodologies and Strategies
Is a classification system that categorizes and organizes different
approaches to system development based on their
characteristics, goals, and processes.
The purpose of such a taxonomy is to help practitioners understand and
choose the appropriate development methodology or strategy based on the
nature of the project, its requirements, and the environment in which it
operates
THE END!