Mekdella College TVET Level III
Web Development and Database Administration
Module Title: Designing Program Logic
Module code: EIS WDDBA3 M04 0323
10/18/2025 Instructor Name: Lunyjock (BSc. Information Technology)
Unit One: program logic design
1.1. Systems development life cycle
The systems development life cycle (SDLC) is a conceptual model used
in project management that describes the stages involved in an
information system development project, from an initial feasibility study
through maintenance of the completed application.
SDLC can apply to technical and non technical systems.
The method or approach that software engineers use in solving problems
in computer science is called Software Development Method.
Another name that is commonly used for the software development
method is called Software Life Cycle.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
The Software Life Cycle Has The Following Components.
Preliminary investigation
Analysis
Design
Implementation
Deployment and Testing
Maintenance
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
A. Preliminary investigation:
The purpose of the preliminary investigation is to determine whether the problem
or deficiency in the current system really exists.
The project team may re-examine some of the feasibility aspects of the project.
Defining the problem:
E.g. Examines documents, work papers, and procedures; Observe system
operations; interview key users of the system.
Suggesting a solution:
E.g. often improving an existing one or building a new information system.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Determine whether the solution is feasible.
Technical Feasibility: Whether implementation is possible with the
available or affordable hardware, software and other technical
resources.
Economic Feasibility: Whether the benefits of the proposed solution
outweigh the costs.
Operational Feasibility: Whether the proposed solution is desirable
within the existing managerial and organizational framework.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
B. Analysis (Requirement gathering): In the analysis phase end user business
requirements are analyzed and project goals converted into the defined system
functions that the organization intends to develop.
C. Design phase: In the design phase, we describe the desired features and
operations of the system.
This phase includes business rules, pseudo-code, screen layouts, and other
necessary documentation.
D. Implementation: In the implementation phase, the development team codes the
product.
System performance is compared to performance objectives established during the
planning phase.
Implementation includes user notification, user training, installation of hardware,
installation of software onto production computers, and integration of the system
into daily work processes.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
E. Deployment and Testing: When teams develop software, they code and
test on a different copy of the software than the one that the users have
access to.
The software that customers use is called production, while other copies
are said to be in the build environment, or testing environment.
F. Maintenance: In the maintenance phase, among other tasks, the team
fixes bugs, resolves customer issues, and manages software changes.
In addition, the team monitors overall system performance, security, and
user experience to identify new ways to improve the existing software.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Some benefits of SDLC:
Increased visibility of the development process for all stakeholders
involved
Efficient estimation, planning, and scheduling
Improved risk management and cost estimation
Systematic software delivery and better customer satisfaction
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
1.2. Design documentation
The Design Document will be the starting point and in many cases you
should, do the Design Document before doing any of the actual work of
program.
Program logic is the implementation of the program's requirements
and design.
If the design of the application is bad, the program logic can
nevertheless be professionally implemented.
Programming logic involves logical operations on hard data that
works according to logical principles and quantifiable results.
The important distinction here is that programming logic, and logic in
general, is fundamentally set against other kinds of programming that
are not built on hard logic or quantifiable states and results.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Programming logic in general rests on a foundation of computational logic
that is shared by both humans and machines, which is what we explore as we
continue to interact with new technologies.
Generally,
Program logic is a picture of why and how you believe a program or a policy
will work.
Program logic demonstrates design & implementation of competence.
Program logic provides a chain of reasoning that links investments with
results.
Program logic is a series of “if-then” relationships that, if implemented as
intended, lead to the desired outcomes.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Logic model
Logic models provide a kind of map for a program or initiative, helping
clarify a program or policy's destination, the pathways toward the
destination, and markers along the way.
In this consider:
Where are you going?
How will you get there?
What will tell you that you have arrived?
Logic models provide a simplified picture of the relationships between the
program activities and the desired outcomes of the program
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
It is valuable in supporting:
Program planning.
Program implementation.
Program monitoring.
Program evaluation.
We also use a logic model to:
Brings detail to broad goals.
Helps identify gaps in program logic and clarify assumptions.
Builds understanding and promotes consensus.
Makes explicit underlying beliefs.
Helps clarify what is appropriate to evaluate and when.
Summarizes complex programs for effective communication
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Program of requirements
A specification of requirements or Program of Requirements is a document used in a
design or procurement process.
The aim of a Program of Requirements is to lay down a clear framework for everyone
involved in the project so that everyone understands which criteria must be met.
Hence, the program of requirements is an important guideline for the designers to ensure
that they deliver the desired result.
Understanding the Programming Process.
There are about six programming phases:
A. Understand the problem
B. Plan the logic
C. Code the program
D. Use software to translate the program to machine language
E. Test the program
F. Deploy the program into
Instructor production
Name: Lunyjock (BSc. Information Technology) 10/18/2025
A. Understanding the problem
May be the most difficult phase
Users may not be able to articulate their needs well
User needs may be changing frequently
Programmers may have to learn the user's functional job tasks
Failure to understand the problem is the major cause of most project failures
B. Planning the logic
Plan the steps that the program will take
Use tools such as flowcharts and pseudo code to depict or illustrate the
structure or steps of program.
Flowchart: a pictorial representation of the logic steps
Pseudo code: English-like representation of the logic
Walk through the logic before coding by desk-checking the logic.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
C. Coding the program:
Select the programming language
Write the instructions
D. Using software to translate the program into machine
language:
Programmers write instructions in English-like high-level
languages
Compilers or interpreters change the programs into low-level
machine language that can be executed
Syntax errors are identified by the compiler or interpreter
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
E. Testing the program:
Execute it with sample data and check results
Identify logic errors and correct them
Choose test data carefully to exercise all branches of the logic
F. Putting the program into production
Do this after testing is complete and all known errors have been
corrected
May require coordination with other related activities or software
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
1.3. Design approach coding
Program algorithm
An algorithm is a set of instructions designed to perform a specific task. In computer
programming, algorithms are often created as functions.
Search engines use proprietary algorithms to display the most relevant results from their
search index for specific queries.
An image editing program may contain algorithms designed to process image data.
Examples of image processing algorithms include cropping, resizing, sharpening,
blurring, red-eye reduction, and color enhancement.
Therefore, programmers usually seek to create the most efficient algorithms possible.
By using highly efficient algorithms, developers can ensure their programs run as fast as
possible and use minimal system resources.
Therefore, developers often improve existing algorithms and include them in future
software updates.
When you see a new version of a software program that has been "optimized" or has
"faster performance," it most means the new version includes more efficient algorithms.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Designing an algorithm/ a solution to a problem
A program is written in order to solve a problem. A solution to a problem
actually consists of two things.
A way to organize the data.
Sequence of steps to solve the problem.
An algorithm is a well-defined computational procedure that takes some
values or a set of values as input and produces some values or a set of
values as output.
An algorithm is a procedure for solving a problem in terms of the actions
to be executed and the order in which those actions are to be executed.
An algorithm is, A step-by-step sequence of instructions.
To solve a specific problem.
In a finite amount of time.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Algorithm development
Once the requirements of a program are defined algorithm development
is the next step.
An algorithm is procedure for solving a problem in terms of the action
to execute (What to do) and the order in which these actions are
executed (done). An algorithm needs to be:
Precise and unambiguous (No ambiguity in any instruction and in the
order of execution)
Correct,
Finite (has to have an end),
Handles all exceptions,
Efficient in time, memory and other resources,
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Many different methods exist for constructing algorithms, (An
algorithm can be expressed in many ways).
Some of those methods are Flowchart and Pseudo-code.
Pseudo code is defined as a step-by-step description of an algorithm.
Pseudo code is an important part of designing an algorithm; it helps the
programmer in planning the solution to the problem as well as the reader
in understanding the approach to the problem.
Pseudocode is an intermediate state between algorithm and program
It is an informal high-level description of the operating principle of a
computer program or other algorithm.
English-like representation of a program (logic).
It could be viewed as the outline of a program
It can't be compiled or executed.
The focus is on solving the problem, not worrying about the specifics of
a programming language.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
The programming language is augmented with natural language
description details, where convenient, or with compact mathematical
notation.
The purpose of using pseudo code is that it is easier for people to
understand than conventional programming language code, and that
it is an efficient and environment-independent description of the key
principles of an algorithm.
The advantage of pseudo coding is that if performed fully and
accurately a computer programmer can translate the Structured
English directly to computer code.
Programmers may resist pseudo code that dictates how to solve the
problem.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Advantages of Pseudo code
Improves the readability of any approach.
It's one of the best approaches to start implementation of an algorithm.
Acts as a bridge between the program and the algorithm or flowchart.
Also works as a rough documentation, so the program of one developer can be understood easily when a
pseudo code is written out.
In industries, the approach of documentation is essential.
And that's where a pseudo-code proves vital.
The main goal of a pseudo code is to explain what exactly each line of a program should do, hence
making the code construction phase easier for the programmer.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Example1. A pseudo-code to calculate bonus
ACCEPT Name, Salary ACCEPT Service year
Bonus=Salary x 0.1 IF Service year> 10 Then
Bonus + 100
DISPLAY Bonus
ENDIF
Example 2. A pseudo-code to calculate interest rate
ACCEPT Name, Principal, Rate
Interest = Principal x Rate
DISPLAY Name, Interest
When we write programs, we assume that the computer executes the program
starting at the beginning and working its way to the end.
We call this sequence
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
SEQUENCE is a linear progression where one task is performed sequentially after
another.
In pseudo code it look like this • Plug in kettle;
• Put teabag in cup;
Statement 1; • Put water into kettle;
Statement 2; • Wait for bottle to boil;
• Add water to cup;
Statement 3;
Statement 4;
Statement 5;
Remove teabag with spoon/fork/;
For example, for making a cup of tea: • Add milk and /or sugar;
Organize everything together; • Serve
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
WHILE is a loop (repetition) with a simple conditional test at its beginning or in
general
As we could state this as:
While (<condition>) While (Kettle is not full)
Do <Statements>; Do keep filling Kettle;
EndWhile
EndWhile;
What if we want to make a choice, for example, do we want add sugar or not to the tea?
We call this selection.
IF-THEN-ELSE is a decision (selection) in which a choice is made between two alternative courses of
action or in general:
• If (Sugar is required)
If (Statement); • Then add Sugar;
Then (statement); • Else do nothing;
• EndIf;
Else(statement) ;
EndIf;
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Example3. A pseudo-code that calculates grade hint Grade A>=80, B>=60, C>=50,
D>=40, F<40
ACCEPT Mark, Name
IF Mark>80 Then
Grade A
ELSE IF Mark >60 Then
Grade B
ELSE IF Mark >50 Then
Grade C
ELSE IF Mark >40 Then
Grade D
ELSE
Grade F
ENDIF
Display Grade, Name
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Flowcharts
A flow chart is a graphical or symbolic representation of a process
(Pictorial representation of a program).
Each step in the process is represented by a different symbol and contains
a short description of the process step.
The flow chart symbols are linked together with arrows showing the
process flow direction.
In other word Flowchart is pictorial representation of the logic & the
purpose of flowcharts is to represent graphically the logical decisions and
progression of steps in the physical completion of a task.
As such, flowcharts are the lowest level of decomposition.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
In a large system the flow charting steps may be complex and the
analyst may choose to represent the system with algebra, structured
English or pseudo code, or some type of decision tree or decision table.
Before beginning the flow charts, the analyst must have a complete
understanding of the entire process and participants (context level), the
subroutines and their interdependencies (level-n diagrams), the data
(data dictionary, inputs/outputs) and transformation of data (DFDs).
The system flowchart represents the physical system; while the
flowcharting at the end of process decomposition represents the logical.
Can be created with pencil and paper, Microsoft Word, PowerPoint, and
Visio etc.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Symbol set
There are seven commonly used symbols in flowcharting.
However, be aware that people can create their own symbol set.
The most common symbols that can be used to represent the main concept include:
I. Terminator: marks the beginning and end of a flowchart.
II. Process: indicates that an operation changed or manipulated the data in some way.
III. Data or input/output: an operation that inputs or outputs data.
IV. Decision: a logical decision point (e.g., if, then; true/false).
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
VI. On-page connector: the logic continues at another place on the same
page.
VII. Off-page connector: the logic continues on a different page.
VIII. Predefined process: a predefined process or subroutine (similar to a
predefined function or process in database programming).
As a general rule, a flowchart has a single entry and exit point.
In procedural programming it is fairly easy to create such charts but Object
oriented programming, on the other hand, can become completed very
quickly and using single-entry, single-exit logic may be difficult, at times
impossible.
As a consequence, another kind of language has developed, Uniform
Modeling Language (UML).
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Six basic flowchart shapes
Terminal symbol -Indicates the beginning or end of a program
Input/output symbol- Represents information coming into a
program or going out of a program.
Processing symbol- Shows calculations that a program must
do
Diamond symbol represents decision- that a program must
make
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
The circle is for connecting parts of the flowchart to other parts. This is especially Useful if the
flowchart covers more than one page.
Flow lines connect the shapes within a flowchart.
Sequence: A decision block implies IF-THEN-ELSE.
A condition (“it's the case that something is true …”, or “while x is true …”) is
tested: if the condition is true, the logic associated with the “THEN” branch is
performed while the ELSE block is skipped. I
f the condition is false, then the ELSE logic is executed and the THEN logic is
skipped.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
For example, “IF there's enough gas in the car (condition), THEN (true) I'll drive to
my friends‟ house; ELSE (false, not enough gas) I'll go to the gas station.
Sometimes the if/then are nested in other if/then conditions: If there's enough gas
in the car, I'll go to my friend's house; if I don't reach there by noon, I'll stop at a
restaurant along the way.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Example :- A program is required to prompt the terminal operator for the
maximum and minimum temperature readings on a particular day, accept
those readings as integers, and calculate and display to the screen the
Average temperature, calculated by (maximum temperature +
minimum temperature)/2.
Defining the Diagram
INPUT PROCESSING OUTPUT
• Max_temp • Prompt for temperatures • Avg_temp
• Min_temp • Get temperatures
• Calculate average temperature
• Display average temperature
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Pseudo Code
Find average_temperature
Prompt operator for max_temp, min_temp
Get max_temp, min_temp
Avg_temp= (max_Temp + min_temp)/2
Output avg_temp to the screen
END
Flow chart
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
DFD’s (Data Flow Diagram)
The Data Flow Diagram (DFD) is a graphical representation of the flow
of data through an information system.
A structured analysis technique that employs a set of visual representations
of the data that moves through the organization, the paths through which
the data moves, and the processes that produce, use, and transform data.
It enables you to represent the processes in your information system from
the viewpoint of data.
The DFD lets you visualize how the system operates, what the system
accomplishes and how it will be implemented, when it is refined with
further specification.
Data flow diagrams are used by systems analysts to design information-
processing systems but also as a way to model whole organizations.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Why Data Flow Diagrams?
Can diagram the organization or the system
Can diagram the current or proposed situation
Can facilitate analysis or design
Provides a good bridge from analysis to design
Facilitates communication with the user at all stages
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Types of DFDs
Current - how data flows now
Proposed - how we'd like it to flow
Logical - the “essence” of a process (i.e. implementation-independent and
describe the system, rather than how activities are accomplished.)
Physical - the implementation of a process (i.e. are implementation-
dependent and describe the actual entities (devices, department, people,
etc.) involved in the current system.)
Partitioned physical - system architecture or high-level design
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Levels of Details
Context Diagram- Shows just the inputs and outputs of the system
Level 0 Diagram- Decomposes the process into the major sub processes
and identifies what data flows between them
Child diagrams- Increasing levels of detail (i.e. Level 1, Level 2 etc)
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Process
Work or actions performed on data (inside the system)
Labels should be verb phrases
Receives input data and produces output
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Data Flow Deposit
Is a path for data to move from one part to another.
Arrows depicting movement of data.
Can represent flow between process and data store by two separate
arrows.
Data Store
Is used in a DFD to represent data that the system stores.
Labels should be noun phrases.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Data Store
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Source/Sink (External Entity)
External entity that is origin or destination of data (outside the system
Labels should be noun phrases
Source –Entity that supplies data to the system
Sink –Entity that receives data from the system
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Context Level Diagram
A context diagram is a data flow diagram that only shows the top
level, otherwise known as Level 0.
At this level, there is only one visible process node that represents
the functions of a complete system in regards to how it interacts with
external entities.
Some of the benefits of a Context Diagram are:
Shows the overview of the boundaries of a system
No technical knowledge is required to understand with the simple
notation
Simple to draw, amend and elaborate as its limited notation
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Level 0 Diagram
Process is “exploded”
Sources, sinks, and data flows repeated from context diagram
Process broken down into sub processes, numbered sequentially
Lower-level data flows and data stores added
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Level 1 DFD
The level 1 DFD, which is the decomposition (i.e. break down) of the
Food Ordering System process shown in the context DFD.
Read through the diagram and then we will introduce some of the
key concepts based on this diagram.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Hierarchy Input Process Output Diagram (HIPO)
It is a systems analysis design aid and documentation technique from the
1970s, used for representing the modules of a system as a hierarchy and for
documenting each module.
It is a hierarchy chart that graphically represents the program's control the
functions (or processes) performed by each module on the system.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
RAD
What is RAD model- advantages, disadvantages and when to
use it?
RAD model is Rapid Application Development model.
It is a type of incremental model.
In RAD model the components or functions are developed in
parallel as if they were mini projects.
The developments are time boxed, delivered and then assembled
into a working prototype.
This can quickly give the customer something to see and use and to
provide feedback regarding the delivery and their requirements.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
The phases in the rapid application development (RAD) model are :
Business modeling: The information flow is identified between various
business functions.
Data modeling: Information gathered from business modeling is used to
define data objects that are needed for the business.
Process modeling: Data objects defined in data modeling are converted to
achieve the business
information flow to achieve some specific business objective. Description
are identified and created for CRUD of data objects.
Application generation: Automated tools are used to convert process
models into code and the actual system.
Testing and turnover: Test new components and all the interfaces.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Diagram of RAD-Model:
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Advantages of the RAD model:
Reduced development time.
Increases reusability of components
Greater customer satisfaction
Encourages customer feedback
Faster delivery time
simple and better quality
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Disadvantages of RAD model:
Depends on strong team and individual performances for identifying business requirements.
Only system that can be modularized can be built using RAD
Requires highly skilled developers/designers.
It is not appropriate when technical risk is high
High dependency on modeling skills
Inapplicable to cheaper projects as cost of modeling and automated code generation is very
high.
When to use RAD model:
RAD should be used when there is a need to create a system that can be modularized in 2 3
months of time.
It should be used if there's high availability of designers for modeling and the budget is high
enough to afford their cost along with the cost of automated code generating tools.
RAD model should be chosen only if resources with high business knowledge are available
and there is aName:
Instructor need to produce
Lunyjock theTechnology)
(BSc. Information system in a short span of time (2-3 months). 10/18/2025
Prototyping
What is Prototype model- advantages, disadvantages and when to
use it?
This prototype is developed based on the currently known requirements.
By using this prototype, the client can get an “actual feel” of the system, since the
interactions with the prototype can enable the client to better understand the
requirements of the desired system.
Prototyping is an attractive idea for complicated and large systems for which there is
no manual process or existing system to help determining the requirements.
The prototypes are usually not complete systems and many of the details are not built
in the prototype.
The goal is to provide a system with overall functionality.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Advantages of Prototype model
Users are actively involved in the development
Errors can be detected much earlier.
Quicker user feedback is available leading to better solutions.
Missing functionality can be identified easily
Confusing or difficult functions can be identified
Disadvantages of Prototype model:
It's a slow in process
It's not complete model
It is time consuming model
It should be developed or built on company's cost
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
When to use Prototype model:
Prototype model should be used when the desired system needs to have a lot
of interaction with the end users.
Typically, online systems, web interfaces have a very high amount of
interaction with end users, are best suited for Prototype model.
It might take a while for a system to be built that allows ease of use and
needs minimal training for the end user.
Prototyping ensures that the end users constantly work with the system and
provide a feedback which is incorporated in the prototype to result in a
useable system.
They are excellent for designing good human computer interface systems.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Case Tools
CASE (computer-aided software engineering) tools have been widely
in use since the 1990's.
They are specialized, computerized tools that aid in the design,
development and maintenance of software.
The term CASE was originally coined by software company,
Nastec Corporation of Southfield, Michigan in 1982 with their original
integrated graphics and text editor GraphiText.
Many different definitions of CASE tools exist, below are just a few of
those:
Galin - CASE tools are computerized software development tools that
support the developer when performing one or more phases of the
software life cycle and/or support software maintenance.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Components of CASE Tools
CASE tools can be broadly divided into the following parts based
on their use at a particular SDLC stage:
Central Repository - Central repository is a central place of storage
where a product specification, requirement documents, related
reports and diagrams, other useful information regarding
management is stored.
Central repository also serves as data dictionary.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Central repository also serves as data dictionary.
Based on their use at a particular SDLC stage:
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Types of CASE tools
Classic CASE tools - established software development support tools (e.g.
interactive debuggers, compilers, etc.)
Real CASE tools - can be separated into three different categories,
depending on where in the development process they are most involved in:
Upper - support analysis and design phases
Lower - support coding phase
Integrated - also known as I-CASE support analysis, design and coding
phases
Upper and lower CASE tools are named as such because of where the
phases they support are in the Waterfall Model (see below)
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Types of CASE Tools
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Why we use CASE tools?
CASE tools offer:
Savings in resources required for software development - with less
Quicker development phase (i.e. shorter time to market)
Reduction of generation of defects
Easier identification of defects during development
Savings in maintenance resources required
Greater standardization of software systems and therefore increased reuse
possibilities
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
i o n.
d e nt
E n tt
h e r A
T y o u
fo r
y o u
nk
ha
T
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Mekdella College TVET Level III
Web Development and Database Administration
Module Title: Designing Program Logic
Module code: EIS WDDBA3 M04 0323
10/18/2025 Instructor Name: Lunyjock (BSc. Information Technology)
Unit Two: program logic Documentation
2.1. Project planning standards
Project planning standards are set to attain the project goals.
Project planning standards may obviously vary from project to
project, but the goals are usually the same: to complete the project
within the timeframe and without exceeding the allotted resources.
Any effective project planning standards must lay down project
management methodologies, provide a step-by-step guide and
inputs for setting standards for project management, facilitate
project reporting, and offer required documentation throughout
the tenure of the project.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Setting Standards for Project Management and Creating
a Project Plan
Project planning standards should be able to clearly
define general project activities and address the
specific requirements of individual projects.
The project standards should provide adequate details
to ensure all team members can identify project
objectives and relate to their fulfillment.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Project planning standards must take into account the overall
project management system, its merits and limitations, define
goals of the project, organize the information system with easy
identification of project objectives and also plan for bridging a
system network to monitor and control the projects efficiently.
Organizations that have to manage multiple projects through
effective collaboration and coordination should establish
planning standards for coordinating and managing the various
projects.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
The project planning standards for coordinating multiple projects
should outline procedures for project prioritization, resource
utilization, and project status updating and reporting.
Project Planning Standards - Parameters and Applications
Project planning standards, for them to be true to the definition,
should include features such as:
Quality Assurance Necessities
Risk Management Plan
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Security Measures
Testing Techniques
Documentation and Portfolio Requirements
Project planning standards should also include configuration
management standards aimed at minimizing disruptions that
affect a project management system and ensuring smooth flow
of project progress.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
Finally, care must be exercised to ensure that
documentation standards comprehensively cover all
details, system methodologies, and technological
resources.
Documentation is critical for helping the team members to
periodically review and modify the technology
applications, system operability, and standard project
management procedures whenever necessary.
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
2.2. Documentation of Project scope
The purpose of a scope and limitations statement is to provide an outline of what
your project will address and what it won’t address.
A project scope document, sometimes called a scope of work (SOW), is a critical
piece of project
paperwork that gets teams and stakeholders aligned on the boundaries of a project
before it even begins.
A well-defined scope document can save you from major headaches by defining the
following project elements:
Project goals
Requirements
Major deliverables
Key milestones
Assumptions
Constraints
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
2.3. Project scope statement
A scope of work (SOW) document is an agreement on the work you're
going to perform on the project.
The list of possible elements you should consider adding to your project
scope statement.
Business case and goals:
Project description and deliverables
Acceptance criteria
Limitations
Assumptions
Exclusions
Costs:
Agreements
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025
i o n.
d e nt
E n tt
h e r A
T y o u
fo r
y o u
nk
ha
T
Instructor Name: Lunyjock (BSc. Information Technology) 10/18/2025