Professional Documents
Culture Documents
Seminar On System Analysis and Design
Seminar On System Analysis and Design
Structured systems analysis and design methodology (SSADM) is a set of standards for systems analysis
and application design. It uses a formal methodical approach to the analysis and design of information
systems. It was developed by Learmonth Burchett Management Systems (LBMS) and the Central
Computer Telecommunications Agency (CCTA) in 1980-1981 as a standard for developing British
database projects.
The SSADM is an open methodology based on the waterfall model. It has been used by many
commercial businesses, consultants, educational establishments and CASE tool developers.
SSADM follows the waterfall life cycle model starting from the feasibility study to the physical design
stage of development. One of the main features of SSADM is the intensive user involvement in the
requirements analysis stage. The users are made to sign off each stage as they are completed assuring
that requirements are met. The users are provided with clear, easily understandable documentation
consisting of various diagrammatic representations of the system. SSADM breaks up a development
project into stages, modules, steps and tasks. The first and foremost model developed in SSADM is the
data model. It is a part of requirements gathering and consists of well defined stages, steps and
products. The techniques used in SSADM are logical data modeling, data flow modeling and entity
behavior modeling.
Logical Data Modeling: This involves the process of identifying, modeling and documenting data
as a part of system requirements gathering. The data are classified further into entities and
relationships.
Data Flow Modeling: This involves tracking the data flow in an information system. It clearly
analyzes the processes, data stores, external entities and data movement.
Entity Behavior Modeling: This involves identifying and documenting the events influencing each
entity and the sequence in which these events happen.
Determining feasibility
Investigating the current environment
Determining business systems options
Defining requirements
Determining technical system options
Creating the logical design
Creating the physical design
Each of these stages applies certain techniques and a sequence of analysis. They include conventions
and procedures for recording and interpreting the information with the help of diagrams and text.
A framework to identify and carry out tasks involved in an ordered manner. It provides a
development plan.
Rules for performing tasks and checking consistency and completeness of tasks.
Formats for recording results of tasks.
Formats and standards for deliverables to support further development
1.2 The main feature of SSADM is that it takes three basic views of information:
Organizational structure is the method by which work flows through an organization. It allows groups to
work together within their individual functions to manage tasks. Traditional organizational structures
tend to be more formalized—with employees grouped by function (such as finance or operations),
region or product line. Less traditional structures are more loosely woven and flexible, with the ability to
respond quickly to changing business environments.
Organizational structures have evolved since the 1800s. In the Industrial Revolution, individuals were
organized to add parts to the manufacture of the product moving down the assembly line. Frederick
Taylor's scientific management theory optimized the way tasks were performed, so workers performed
only one task in the most efficient way. In the 20th century, General Motors pioneered a revolutionary
organizational design in which each major division made its own cars.
Today, organizational structures are changing swiftly—from virtual organizations to other flexible
structures. As companies continue to evolve and increase their global presence, future organizations
may embody a fluid, free-forming organization, member ownership and an entrepreneurial approach
among all members..
A hallmark of a well-aligned organization is its ability to adapt and realign as needed. To ensure long-
term viability, an organization must adjust its structure to fit new economic realities without diminishing
core capabilities and competitive differentiation. Organizational realignment involves closing the
structural gaps impeding organizational performance.
Rapid reorganization of business units, divisions or functions can lead to ineffective, misaligned
organizational structures that do not support the business. Poorly conceived reorganizations may create
significant problems, including the following:
Structural gaps in roles, work processes, accountabilities and critical information flows can occur
when companies eliminate middle management levels without eliminating the work, forcing
employees to take on additional responsibilities.
Diminished capacity, capability and agility issues can arise when a) lower-level employees who
step in when middle management is eliminated are ill-equipped to perform the required duties
and b) when higher-level executives must take on more tactical responsibilities, minimizing the
value of their leadership skills.
Disorganization and improper staffing can affect a company's cost structure, cash flow and
ability to deliver goods or services. Agile organizations can rapidly deploy people to address
shifting business needs. With resources cut to the bone, however, most organizations' staff
members can focus only on their immediate responsibilities, leaving little time, energy or desire
to work outside their current job scope. Ultimately, diminished capacity and lagging response
times affect an organization's ability to remain competitive.
Declining workforce engagement can reduce retention, decrease customer loyalty and limit
organizational performance and stakeholder value.
2.3 The importance of aligning the structure with the business strategy
The key to profitable performance is the extent to which four business elements are aligned:
Leadership. The individuals responsible for developing and deploying the strategy and monitoring
results.
Organization. The structure, processes and operations by which the strategy is deployed.
People. The experience, skills and competencies needed to execute the strategy.
An understanding of the interdependencies of these business elements and the need for them to adapt
to change quickly and strategically are essential for success in the high-performance organization. When
these four elements are in sync, outstanding performance is more likely.
Achieving alignment and sustaining organizational capacity requires time and critical thinking.
Organizations must identify outcomes the new structure or process is intended to produce. This typically
requires recalibrating the following:
Five elements create an organizational structure: job design, departmentation, delegation, span of
control and chain of command. These elements comprise an organizational chart and create the
organizational structure itself. "Departmentation" refers to the way an organization structures its jobs to
coordinate work. "Span of control" means the number of individuals who report to a manager. "Chain of
command" refers to a line of authority.
Organizational structures have evolved from rigid, vertically integrated, hierarchical, autocratic
structures to relatively boundary-less, empowered, networked organizations designed to respond
quickly to customer needs with customized products and services.
Today, organizations are usually structured vertically, vertically and horizontally, or with open
boundaries. Specific types of structures within each of these categories are the following:
Two main types of vertical structure exist, functional and divisional. The functional structure divides
work and employees by specialization. It is a hierarchical, usually vertically integrated, structure. It
emphasizes standardization in organization and processes for specialized employees in relatively narrow
jobs.
This traditional type of organization forms departments such as production, sales, research and
development, accounting, HR, and marketing. Each department has a separate function and specializes
in that area. For example, all HR professionals are part of the same function and report to a senior
leader of HR. The same reporting process would be true for other functions, such as finance or
operations.
In functional structures, employees report directly to managers within their functional areas who in turn
report to a chief officer of the organization. Management from above must centrally coordinate the
specialized departments.
People are in specialized "silos" and often fail to coordinate or communicate with other
departments.
Cross-functional activity is more difficult to promote.
The structure tends to be resistant to change.
This structure works best for organizations that remain centralized (i.e., a majority of the decision-
making occurs at higher levels of the organization) because there are few shared concerns or objectives
between functional areas (e.g., marketing, production, purchasing, IT). Given the centralized decision-
making, the organization can take advantage of economies of scale in that there are likely centralized
purchasing functions.
Also a vertical arrangement, a divisional structure most often divides work and employees by output,
although a divisional structure could be divided by another variable such as market or region. For
example, a business that sells men's, women's and children's clothing through retail, e-commerce and
catalog sales in the Northeast, Southeast and Southwest could be using a divisional structure in one of
three ways:
It can result in a loss of efficiency and a duplication of effort because each division needs to
acquire the same resources.
Each division often has its own research and development, marketing, and other units that could
otherwise be helping each other.
Employees with similar technical career paths have less interaction.
Divisions may be competing for the same customers.
Each division often buys similar supplies in smaller quantities and may pay more per item.
This type of structure is helpful when the product base expands in quantity or complexity. But when
competition among divisions becomes significant, the organization is not adapting quickly enough, or
when economies of scale are lacking, the organization may require a more sophisticated matrix
structure.
A matrix structure combines the functional and divisional structures to create a dual-command
situation. In a matrix structure, an employee reports to two managers who are jointly responsible for
the employee's performance. Typically, one manager works in an administrative function, such as
finance, HR, information technology, sales or marketing, and the other works in a business unit related
to a product, service, customer or geography.
A typical matrix organizational structure might look like this:
It creates a functional and divisional partnership and focuses on the work more than on the
people.
It minimizes costs by sharing key people.
It creates a better balance between time of completion and cost.
It provides a better overview of a product that is manufactured in several areas or sold by
various subsidiaries in different markets.
These disadvantages can be exacerbated if the matrix goes beyond two-dimensional (e.g., employees
report to two managers) to multidimensional (e.g., employees report to three or more managers).
Matrix structures are common in heavily project-driven organizations, such as construction companies.
These structures have grown out of project structures in which employees from different functions
formed teams until completing a project, and then reverted to their own functions. In a matrix
organization, each project manager reports directly to the vice president and the general manager. Each
project is, in essence, a mini profit center, and therefore, general managers usually make business
decisions.
The matrix-structured organization also provides greater visibility, stronger governance and more
control in large, complex companies. It is also well suited for development of business areas and
coordination of complex processes with strong dependencies.
Matrix structures pose difficult challenges for professionals charged with ensuring equity and fairness
across the organization. Managers working in matrix structures should be prepared to intervene via
communication and training if the structure compromises these objectives. Furthermore, leadership
should monitor relationships between managers who share direct reports. These relationships between
an employee's managers are crucial to the success of a matrix structure.
Boundary-less organizational structures can be created in varied forms, including hollow, modular and
virtual organizations.
Hollow organizations. Hollow structures divide work and employees by core and noncore competencies.
Hollow structures are an outsourcing model in which the organization maintains its core processes
internally but outsources noncore processes. Hollow structures are most effective when the industry is
price competitive and choices for outsourcing exist. An example of a hollow structure is a sports
organization that has its HR functions (e.g., payroll and benefits) handled by outside organizations.
Minimizing overhead.
Enabling the organization to focus on its core product and eliminating the need to develop
expertise in noncore functions.
Disadvantages include:
Modular organizations. Modular structures differ from hollow organizations in that components of a
product are outsourced. Modular structures may keep a core part of the product in-house and
outsource noncore portions of the product. Networks are added or subtracted as needs change. For a
modular structure to be an option, the product must be able to be broken into chunks. For example,
computer manufacturer Dell buys parts from various suppliers and assembles them at one central
location. Suppliers at one end and customers at the other become part of the organization; the
organization shares information and innovations with all. Customization of products and services results
from flexibility, creativity, teamwork and responsiveness. Business decisions are made at corporate,
divisional, project and individual team member levels.
Disadvantages include concerns about the actions of suppliers outside the control of the core
management company. Risk occurs if the partner organization removes itself form the quality check on
the end product or if the outsourced organization uses a second outsourced organization. Examples of
supplier concerns include the following:
Suppliers, or subcontractors, must have access to—and safeguard—most, if not all, of the core
company's data and trade secrets.
Suppliers could suddenly raise prices on or cease production of key parts.
Knowing where one organization ends and another begins may become difficult.
Understanding the organizational environment is crucial in open boundary models. For example, some
industries cannot outsource noncore processes due to government regulation. (For example, health
insurance organizations may be unable to outsource Medicare processes). Or, in some cases,
outsourcing may have to be negotiated with a union.
The key to effective boundary-less organizations is placing adaptable employees at all levels.
Management must give up traditional autocratic control to coach employees toward creativity and the
achievement of organizational goals. Employees must apply initiative and creativity to benefit the
organization, and reward systems should recognize such employees.
Learning organizations. A learning organization is one whose design actively seeks to acquire knowledge
and change behavior as a result of the newly acquired knowledge. In learning organizations,
experimenting, learning new things, and reflecting on new knowledge are the norms. At the same time,
there are many procedures and systems in place that facilitate learning at all organization levels.
Organizations typically mature in a consistent and predictable manner. As they move through various
stages of growth, they must address various problems. This process creates the need for different
structures, management skills and priorities.
The four stages of development in an organization's life cycle include the following:
Startup
The beginning stage of development is characterized by an inconsistent growth rate, a simple structure
and informal systems. At this stage the organization is typically highly centralized. "Dotcom" companies
are a good example of startup companies.
Expansion
The expansion stage is evidenced by rapid, positive growth and the emergence of formal systems.
Organizations at this stage typically focus on centralization with limited delegation.
Consolidation
The consolidation stage is characterized by slower growth, departmentalization, formalized systems and
moderate centralization.
Diversification
The diversification stage occurs when older, larger organizations experience rapid growth, bureaucracy
and decentralization.
As an organization grows or passes from one stage of development to another, carefully planned and
well-conceived changes in practices and strategies may be necessary to maximize effectiveness. There
are no guarantees that an organization will make it from one stage to the next. In fact, a key opportunity
for leadership is to recognize indicators that suggest an organization is in a risky or unhealthy stage and
to make appropriate structural adjustments.
Metrics
The art of organizational design is assessing the environment's essential aspects and their meaning for
the organization's future. Translating those characteristics into the right structure is critical to increasing
efficiency and controlling costs. When selecting the best structure for the organization, company leaders
should examine and evaluate current key structural dimensions and contextual factors. SeeHow do I
determine which HR metrics to measure and report?
Structural dimensions
Leaders can develop an understanding of the organization's internal environment through measurement
and analysis of its structural dimensions. Key dimensions, which are usually measured through a survey,
include:
Specialization. The extent to which an organization's activities are divided into specialized roles.
Standardization. The degree to which an organization operates under standard rules or procedures.
Centralization. The degree to which leaders at the top of the management hierarchy have authority to
make certain decisions.
Configuration. The shape of the organization's role structure, which includes:
Chain of command. The number of vertical levels or layers on the organizational chart.
Span of control. The number of direct reports per manager or the number of horizontal levels or
layers on the organizational chart.
Contextual factors
A review of contextual factors will provide a better understanding of the external environment and the
relationship between the internal and external environment. Some of the significant contextual factors
to consider in this review include:
Origin and history. Was the organization privately founded? What changes have occurred in ownership
or location?
Ownership and control. Is the organization private or public? Is control divided among a few individuals
or many?
Size. How many employees does the organization have? What are its net assets? What is its market
position?
Productsand services. What types of goods and services does the organization manufacture and
provide?
Interdependence. What is the degree to which the organization depends on customers, suppliers, trade
unions or other related entities?
After examining the structural dimensions and contextual factors and developing an understanding of
the connection between an organization's structure and strategy, organization leaders can consider
alternative structures. They may use diagnostic models and tools to guide the design process.
The last few years have seen an unprecedented expansion and improvement of online communication.
Software has pushed the boundaries of workplace communication beyond e-mail into collaborative
social media platforms and innovative intranets. The decline in traditional communication methods and
the dramatic increase in cyber communication has had a major impact on the workplace and is leading
to restructuring.
As organizations continue to restructure to remain competitive, communications can drive the transition
to an effective new organizational structure. Research suggests that companies can positively affect
their credibility with employees through various organizational communication programs.
In establishing internal communication channels, leadership must be aware of the advantages and
shortcomings of communication technologies and match them to the organization's needs, strategic
goals and structure. Employers should also be cognizant of, and be prepared to deal with, the common
communication challenges in various organizational structures. For example, communications
technology has enabled organizations to create virtual workplaces and teams. In a virtual team,
members from various geographical locations work together on a task, communicating via e-mail,
instant messaging, teleconferencing, videoconferencing and web-based workspaces. Although virtual
teams have significant advantages—most notably reduced travel costs and flexibility in staffing and work
schedules—they also pose challenges. Virtual teams often find coordinating team logistics and
mastering new technologies difficult. Communication is also a major challenge because of the absence
of visual (body language) and verbal (intonation) clues. Research suggests that organizations can
overcome these challenges through effective support and training.
Global Issues
Organizational structures often need to change as companies expand around the globe. An
organization's leaders should plan carefully before opening offices in another country.
Many issues arise when an employer plans to open an international branch, hire international workers
and formulate a globalized strategy. Among the questions that must be answered are:
How do human resource legal requirements and practices vary from country to country?
Should HR officials at headquarters do the work, or should a company open HR offices in the
other country?
Should an organization hire consultants to handle local hiring and personnel services?
Unless employers have a sound HR strategy ready before leaping into another country, they could fail.
When an organization opens international offices, HR professionals and other business leaders should
be able to communicate as effectively with workers across the globe as around the corner. That can be a
challenge. Having a robust intranet and using videoconferencing are alternatives to face-to-face
communication.
As rapid changes in technology affect global communication, employees must be aware of linguistic,
cultural, religious and social differences among colleagues and business contacts. The organization
should train all employees (not just managers and CEOs who travel) in cultural literacy.
Moreover, employers should be aware that language difficulties, time‐and‐distance challenges, the
absence of face‐to‐face contact, and, above all, the barriers posed by cultural differences and personal
communication styles make global virtual work far more complex than local structures. These practices
can enhance global virtual team relationships:
Using online chats, video- and audioconferencing in addition to one-on-one conversations and
e-mail.
Posting profiles of team members that outline their expertise and roles in the organization.
Being sensitive to the level of engagement team members are likely to deliver if they must meet
at inconvenient hours across multiple time zones.
Legal Issues
Regardless of the type of structure, employers must ensure compliance with legal requirements in the
countries where their organizations operate. Some of those requirements will be quite extensive (for
example, public companies must ensure compliance with the Sarbanes-Oxley Act, and most
organizations must ensure compliance with the Fair Labor Standards Act and its related state laws).
When organizational structures change, or if the chain of command is weak or fails to keep up-to-date
with changes in the business, a company may have compliance problems because the structure has not
been evaluated with regard to these laws. Imagine, for example, a restructuring that reduces the
number of direct reports for an entire layer of management, which perhaps leads to those individuals no
longer being exempt.
As an organization moves internationally, laws in the host countries must also be evaluated and a plan
put in place for compliance before the expansion occurs. Employers must anticipate and plan for laws
affecting all aspects of the employee experience, including hiring, benefits, leaves and termination.
Main Roles
Defining and understanding the requirement of user through various Fact finding techniques.
Prioritizing the requirements by obtaining user consensus.
Gathering the facts or information and acquires the opinions of users.
Maintains analysis and evaluation to arrive at appropriate system which is more user friendly.
Suggests many flexible alternative solutions, pick the best solution, and quantify cost and
benefits.
Draw certain specifications which are easily understood by users and programmer in precise
and detailed form.
Implemented the logical design of system which must be modular.
Plan the periodicity for evaluation after it has been used for some time, and modify the system
as needed.
The following figure shows the attributes a systems analyst should possess −
Interpersonal Skills
Interface with users and programmer.
Facilitate groups and lead smaller teams.
Managing expectations.
Good understanding, communication, selling and teaching abilities.
Motivator having the confidence to solve queries.
Analytical Skills
Management Skills
Technical Skills
MAINTENANCE
PLA
ANALYSIS
SYSTEM
IMPLEMENTATIO DEVELOPMENT
N
LIFE CYCLE
DESIGN
TESTING
DEVELOPMENT
There are seven primary stages of the modern system development life cycle. Here’s a brief breakdown:
Planning Stage
Planning Stage
Before we even begin with the planning stage, the best tip we can give you is to take time and acquire
proper understanding of app development life cycle.
The planning stage (also called the feasibility stage) is exactly what it sounds like: the phase in which
developers will plan for the upcoming project.
It helps to define the problem and scope of any existing systems, as well as determine the objectives for
their new systems.
By developing an effective outline for the upcoming development cycle, they'll theoretically catch
problems before they affect development.
And help to secure the funding and resources they need to make their plan happen.
Perhaps most importantly, the planning stage sets the project schedule, which can be of key importance
if development is for a commercial product that must be sent to market by a certain time.
Analysis Stage
The analysis stage includes gathering all the specific details required for a new system as well as
determining the first ideas for prototypes.
Developers may:
Furthermore, developers will often create a software requirement specification or SRS document.
This includes all the specifications for software, hardware, and network requirements for the system
they plan to build. This will prevent them from overdrawing funding or resources when working at the
same place as other development teams.
Design Stage
The design stage is a necessary precursor to the main developer stage.
Developers will first outline the details for the overall application, alongside specific aspects, such as its:
User interfaces
System interfaces
Databases
They’ll typically turn the SRS document they created into a more logical structure that can later be
implemented in a programming language. Operation, training, and maintenance plans will all be drawn
up so that developers know what they need to do throughout every stage of the cycle moving forward.
Once complete, development managers will prepare a design document to be referenced throughout
the next phases of the SDLC.
Development Stage
The development stage is the part where developers actually write code and build the application
according to the earlier design documents and outlined specifications.
This is where Static Application Security Testing or SAST tools come into play.
Product program code is built per the design document specifications. In theory, all of the prior planning
and outlined should make the actual development phase relatively straightforward.
Developers will follow any coding guidelines as defined by the organization and utilize different tools
such as compilers, debuggers, and interpreters.
Programming languages can include staples such as C++, PHP, and more. Developers will choose the
right programming code to use based on the project specifications and requirements.
Testing Stage
Building software is not the end.
Now it must be tested to make sure that there aren’t any bugs and that the end-user experience will not
negatively be affected at any point.
During the testing stage, developers will go over their software with a fine-tooth comb, noting any bugs
or defects that need to be tracked, fixed, and later retested.
t’s important that the software overall ends up meeting the quality standards that were previously
defined in the SRS document.
Depending on the skill of the developers, the complexity of the software, and the requirements for the
end-user, testing can either be an extremely short phase or take a very long time. Take a look at our top
10 best practices for software testing projects for more information.
After testing, the overall design for the software will come together. Different modules or designs will be
integrated into the primary source code through developer efforts, usually by leveraging training
environments to detect further errors or defects.
The information system will be integrated into its environment and eventually installed. After passing
this stage, the software is theoretically ready for market and may be provided to any end-users.
Maintenance Stage
The SDLC doesn’t end when software reaches the market. Developers must now move into a
maintenance mode and begin practicing any activities required to handle issues reported by end-users.
Furthermore, developers are responsible for implementing any changes that the software might need
after deployment.
This can include handling residual bugs that were not able to be patched before launch or resolving new
issues that crop up due to user reports. Larger systems may require longer maintenance stages
compared to smaller systems.
5.0 FEASIBILITY STUDIES
In case the system proposal is acceptable to the management, the next phase is to examine the
feasibility of the system. The feasibility study is basically the test of the proposed system in the light of
its workability, meeting user’s requirements, effective use of resources and of course, the cost
effectiveness. These are categorized as technical, operational, economic and schedule feasibility. The
main goal
of feasibility study is not to solve the problem but to achieve the scope. In the process of feasibility
study, the cost and benefits are estimated with greater accuracy to find the Return on Investment (ROI).
This also defines the resources needed to complete the detailed investigation. The result is a feasibility
report submitted to the management. This may be accepted or accepted with modifications or rejected.
The system cycle proceeds only if the management accepts it. It can also be explain as below
As the names suggest, a feasibility study is used to assess the viability of a project, such as ensuring a
project is legally and technically feasible as well as economically reasonable.
It informs us if a project is worth the effort, in some case scenarios, a project may not be doable.
There might be several reasons for this, including the need for too many resources, which not only
prohibits those resources from doing other jobs but may also cost more than an entire firm would make
back by taking on a project that isn’t financially worthwhile.
A well-designed study should provide a historical context of the business or project, such as a product
description or service, financial reports, details of operations and management, marketing research and
policies, financial data, legal needs, and tax duties.
In general, such analyses come before technical development and project completion.
A feasibility analysis assesses the project’s likelihood of success; hence, perceived objectivity is a
significant aspect of the study’s credibility for possible investors and financing institutions.
There are five sorts of feasibility studies—individual topics that a feasibility study investigates, as
indicated below.
Technical Feasibility
It assists companies in determining whether technical resources are enough and whether the technical
team is capable of translating ideas into workable systems.
Technical feasibility also includes an assessment of the proposed system’s hardware, software, and
other technological needs.
As an extreme example, a company would not want to risk installing Star Trek transporters in its building
—this project is presently not physically viable.
Economic Feasibility
This evaluation often includes a cost/benefit analysis of the project, which assists businesses in
determining the viability, cost, and advantages of a project before allocating financial resources.
It also functions as an impartial project evaluation and enhances project credibility by assisting decision-
makers in determining the positive economic advantages that the proposed project would give to the
business.
Operational Feasibility
This evaluation entails researching to establish whether—and how well the organization’s needs can be
addressed by finishing the project.
Operational feasibility studies also look at how a project plan meets the criteria specified during the
system development requirements analysis phase.
Legal Feasibility
This evaluation looks at if any component of the planned project violates any regulations, such as zoning
regulations, data protection legislation, or social media legislation. Assume a company wishes to develop
a new office building in a specified area. A feasibility study may discover that the desired site for the
company is not designated for that sort of business.That organization has just saved a lot of time and
effort by discovering that their project was not possible from the start.
Scheduling Feasibility
It is the most critical assessment for project success; after all, a project will fail if it is not completed on
time. An organization predicts the length of time it will take to finish a project in scheduling
feasibility.When all of these areas have been thoroughly investigated, the feasibility study may assist
identify any obstacles that the proposed project may encounter, such as:
Internal Project Constraints: Technical, technological, financial, and resource constraints, among
others.
Financial, marketing, export, and other internal corporate constraints
External limitations include logistics, the environment, laws and regulations, and so on.
Feasibility study in SDLC
The feasibility study is the second step of the SDLC. It is the stage at which all of the software needs and
requirements are written down and thoroughly documented.
This document is created in this stage with the assistance of the Software Requirement Specification
document. It is referred to as the SRS paper.
This document contains all of the necessary information regarding the development process and how
everything will be conceived and created throughout the project development lifecycle.
Is it possible to complete this project within the budget approved by upper management and
stakeholders?
Schedule:
Determine whether or not the project can be completed within the timeframe provided.
Legal:
Can this project meet the requirements of cyberlaw as well as other regulatory compliances?
Technical:
Determine whether the software is compatible with the current computer system.
Operation feasibility:
The feasibility study is a significant step in any SDLC process because it examines different elements like
cost necessary for creating and executing the system, the time necessary for each step of the system,
etc.
If these significant variables are not considered, the organization and its development will suffer, and
the system would collapse completely.
So, to properly operate the project and the company, this stage is significant in the SDLC process.
After analyzing system requirements, the next phase in the software development life cycle is to analyze
software requirements.
In other words, software requirement analysis is another name for a feasibility study.
The development team must communicate with clients, understand their requirements, and analyze the
system throughout this phase.
It would be able to create a report on the identified areas of difficulty by analyzing in this manner.
A thorough document or report is created in this phase by doing a comprehensive analysis in this area,
which includes details such as the project plan or schedule, the cost expected for designing and
executing the system, target dates for each step of delivery of the system produced, etc.
This phase is the foundation of the software development process since subsequent phases in the
software development life cycle are based on the analysis performed in this phase, hence rigorous
analysis must be performed in this phase.
Though the feasibility study cannot be concentrated on a particular area, some of the areas or analyses
were done in the feasibility study are included below.
However, all of the processes outlined below will not be followed by every system constructed.
The feasibility study differs depending on the system that will be constructed.
A feasibility analysis is conducted on the system under development to determine if the system
development process necessitates people training.
This aids in the design of training sessions as needed in the future.
Is the system designed with the ability to grow or transition to new technologies in the future if
necessary? Another study is being conducted to determine the system’s mobility in the future.
Is the system development cost prohibitively expensive, or does it come in under budget? A cost-
benefit analysis is performed. In other words, the project’s cost feasibility is assessed.
This assists in determining if the company will meet the planned expenditures and assists the
business in creating earlier and more effective preparations for meeting additional expenditures
due to system development.
A decision is taken on the software to utilize to create the system. This study and analysis will aid in
determining the optimum system and organizational implementation.
This feasibility study considers variables such as scalability, installation, development, and so on.
In a nutshell, this feasibility assessment examines technical topics.
This analysis aids in the improvement of the system’s efficiency. That is due to the fact that
selecting the appropriate technology based on a study of the system demands aids in boosting
the system efficiency.
The aforementioned feasibility is analyses that aid in the development of the system.
However, the scope of the feasibility study does not end there.
In other words, a feasibility study is conducted to determine how the system will be maintained
throughout the maintenance stage.
This aids with strategic planning for this period as well as risk analysis.
The study also aids in determining what training should be provided, and how and what documentation
should be generated to assist users and developers throughout the maintenance phase.
There are several benefits to doing a feasibility study, some of which are listed below:
This research, created as the first phase in the software development life cycle, includes all of the
analytic components that aid in thoroughly examining the system requirements.
Aids in identifying the risk variables involved in the system development and deployment.
The feasibility study aids in risk analysis planning.
A feasibility study aids in the creation of a cost/benefit analysis, which aids in the effective
operation of the organization and system.
A feasibility study aids in developing strategies for training developers to deploy the system.
A feasibility study is a report that might be used by the organization’s senior or top management
because the organization decides on cost estimation, funding, and other vital decisions based on
the report, which is critical for an organization to function financially and for the system to work
smoothly.
So, before producing a product or software, it is crucial to do feasibility studies in some or all of the
areas stated, which will aid in the development and maintenance of the program efficiently and
effectively within budgeted expenditures.
In conclusion
The feasibility study is essentially a test of the proposed system in terms of its usability, satisfying user
needs, effective resource use, and, of course, cost-effectiveness.
The primary purpose of a feasibility study is to accomplish the scope rather than to solve the problem.
During the feasibility study, the costs and benefits are more precisely calculated to determine the
Return on Investment (ROI).
This also specifies the resources required to accomplish the in-depth inquiry. The result is a feasibility
study that is presented to management. This can be approved, accepted with changes, or rejected.
Preliminary Investigation : Preliminary system study is the first stage of system development life
cycle. This is a brief investigation of the system under consideration and gives a clear picture of what
actually the physical systemis? In practice, the initial system study involves the preparation of a System
Proposal’ which lists the Problem Definition, Objectives of
the Study, Terms of reference for Study, Constraints, Expected benefits of the new system, etc. in the
light of the user requirements.
The system proposal is prepared by the System Analyst (who studies the system) and places it before
the user management. The management may accept the proposal and the cycle proceeds to the next
stage. The management may also reject the proposal or request some modifications in the proposal. In
summary, we would say that system study phase passes through the following steps:
1 problem identification and project initiation
2 background analysis
3 inference or findings (system proposal)
Analyzing Requirements: Gathering requirements for the project is the most important part of the SDLC
for project managers and internal stakeholders of a project. During this phase, the customer states the
expectations of the project including who will use the product, how the customer will use the product,
and the specific information included with any special customer requirements related to the software.
The customer meets with business managers and analysts to provide the requirements. It's important
for the project team to understand the needs of the customer because this information is critical to
developing the product the customer requests. After the customer provides requirements for the
product, the project manager and members of the project team begin to analyze the requirements. The
business managers analyze each requirement to ensure the requirement can be included in the software
without causing breaks or problems with system functionality.
For example, Lane wants to develop a software application that will help users find inventory in retail
stores faster. To start this process, Lane provides a list of customer requirements to his project manager:
First, the software must include all inventory in each retail store
Next, each retail store has the same inventory part numbers
Next, there are five stores in three states
Lastly, the application must be able to provide accurate inventory availability within 60 seconds
of performing the search
System analysis and design is a process that many companies use to evaluate particular business
situations and develop ways to improve them through more optimal methods. Companies may use this
process to reshape their organization or meet business objectives related to growth and profitability.
System analysis and design also typically emphasize how systems act, their relationships to other
subsystems and the ability of both to meet a specific goal. This often involves analyzing a system's
performance and the quality of its output.
System analysis refers to the process of gathering data, interpreting information, identifying issues and
using the results to recommend or develop possible system improvements. During this stage, companies
may also evaluate future business needs and how improvements may answer them. System design
involves the process in which an organization, in an appropriate situation, develops a newer system or
strategy to complement or replace an existing one. This design and development cycle includes
planning, analysis, design, implementation and maintenance.
BENEFITS
The most common benefit of system analysis and design is improving upon a previous system and
enjoying increased operational efficiency. Here's a list of other benefits you and your employing
organization may enjoy from this practice:
2 DATA DICTIONARY
A data dictionary is a structured receptacle for data elements in a system. It stores descriptions of all
data elements in data flow diagrams. These data elements may include processes, details and definitions
of data flows, data stores and data within those data stores. It also stores information about the
relationship between data elements. Data dictionaries generally improve the communication between
users and system analysts. They're also an important part of building a database because analysts can
use them to manipulate and control access of the database.
There are two types of data dictionaries. An active dictionary relates to a specific database and updates
automatically with a data management system. Its connection to a specific database sometimes makes it
more challenging to transfer data. A passive data dictionary doesn't connect to a specific server or
database, which can improve data transference efforts. These dictionaries don't update automatically
and require manual maintenance to prevent asynchronous metadata.
3 DECISION TRESS
Decision trees assist businesses with defining complex relationships and decisions in an organized
diagram. These diagrams reveal alternate conditions and actions in a horizontal tree shape and
demonstrate which conditions an organization may consider first, then each one in order of importance.
A decision tree illustrates the relationship of each condition to its action, which allows analysts to
consider decision sequences and identify the best one. This depicts a single representation of
relationships between the conditions and actions, which may limit information about other
combinations of actions an analyst can test.
4 DECISION TABLES
Decision tables can improve the general understanding of a complex logical relationship by providing a
matrix of rows and columns for defining an issue and possible actions. Organizations may find this tool
useful in situations where certain actions rely on the occurrence of one or a combination of conditions.
In a decision table, decision rules define the relationships between decisions, conditions and actions.
Here are the general components of a decision table;
Condition stub: This section is the upper left quadrant and lists all the conditions a professional can
check in a situation.
Action stub: This is the lower left quadrant and defines the actions the system can perform to meet a
specific condition.
Condition entry: This is the upper right quadrant and provides answers to questions an organization
asks in the condition stub section.
Action entry: This is the lower right quadrant and identifies the appropriate action from the answers to
the conditions in the condition entry section.
5 STRUCTURED ENGLISH
System analysts often use structured English because it often provides more understandable and precise
descriptions of a process. It often helps non-technical users understand a computer program's design by
separating it into logical steps using straightforward English words. Organizations may benefit from this
method when they consider sequences and loops in a program and an issue requires sequences of
actions with decisions.
This process results from a structured programming language based on procedural logic that employs
imperative sentences and construction to perform operations for an action. It doesn't contain a strict
syntax rule and expresses all logic through sequential decision structures and iterations. Here are a few
of the guidelines that professionals typically follow when using Structured English:
6 PSEUDOCODE
A pseudocode typically uses structural rules of a normal programming language, but professionals use it
for human interpretation instead of machine interpretation. This means that pseudocodes often omit
details required for machine-reading, such as language-specific code. It expresses logic in plain English
and often uses physical programming logic while not using actual coding. Professionals may use this
alongside structured programming as well. They typically create a pseudocode while initially managing a
new algorithm and then translate that code into the target programming language. It often replaces
flowcharts in a program.
7 SIMULATION
A simulation usually involves developing a numerical model that illustrates a system's activity in the
form of individual events in the system's individual segments. This method helps system analysts
conduct testing investigations on the general model of a system. It often helps organizations evaluate
the effects of changes in a process or segment. Analysts can also use simulations to predict how new
systems may function and perform compared to an old system.
In the light of the above, it is the first critical step in defining the structure of available data. Data
Modeling is the process of creating data models by which data associations and constraints are
described and eventually coded to reuse. It conceptually represents data with diagrams, symbols, or text
to visualize the interrelation.
It is clear by now that data modeling is necessary foundational work. It allows data to be easily stored in
a database and positively impacts data analytics. It is critical for data management, data governance,
and data intelligence.
1. It means better documentation of data sources, higher quality and clearer scope of data use with
faster performance and few errors.
2. From the regulatory compliance view, data modeling ensures that an organization adheres to
governmental laws and applicable industry regulations.
A data flow diagram (DFD) is a graphical or visual representation using a standardized set of symbols
and notations to describe a business's operations through data movement. They are often elements of
a formal methodology such as Structured Systems Analysis and Design Method (SSADM).
A data flow diagram shows the way information flows through a process or system. It includes data
inputs and outputs, data stores, and the various subprocesses the data moves through. DFDs are built
using standardized symbols and notation to describe various entities and their relationships.
The data dictionary is a set of multi-dimensional tables that capture metadata for all data models and
databases that must use the canonical model. It can also capture how the columns are mapped between
databases. Many ETL tools, such as Informatica and IBM DataStage, use XML instead of multi-
dimensional star schema to capture the mapping data, but the final effect is the same. Once the
metadata is captured, multiple mapping files or mapping records can be created to provide automated
ETL through the canonical model. Additionally, data can be exported to and from the canonical model
using JSON, SQL, stored procedures, Java, and other languages and tools. However, each ETL method
must have a set of unit tests to ensure data integrity.
9.0 SYSTEM DESIGN USING ERD, SYSTEM FLOWCHART, STATE
TRANSITION
What is an ER diagram?
An Entity Relationship (ER) Diagram is a type of flowchart that illustrates how “entities” such as
people, objects or concepts relate to each other within a system. ER Diagrams are most often
used to design or debug relational databases in the fields of software engineering, business
information systems, education and research. Also known as ERDs or ER Models, they use a
defined set of symbols such as rectangles, diamonds, ovals and connecting lines to depict the
interconnectedness of entities, relationships and their attributes. They mirror grammatical
structure, with entities as nouns and relationships as verbs. ER diagrams are related to data
structure diagrams (DSDs), which focus on the relationships of elements within entities instead
of relationships between entities themselves. ER diagrams also are often used in conjunction
with data flow diagrams (DFDs), which map out the flow of information for processes or
systems.
SYSTEM FLOWCHART
System flowcharts are the diagram type that shows you the flow of data and how decisions can affect
the events surrounding it. Like other types of flowcharts, system flowcharts consist of start/end
terminals, processes, and decisions, all connected by arrows showing the flow and how data moves in
the flow.
A flow chart tutorial would not be completed without a guideline. As with other types of flowcharts, for
system flowcharts, you should follow the current standard guideline below:
STATE TRANSITION DIAGRAM : A state diagram is a type of used in computer science and related
fields to describe the behavior of systems. State diagrams require that the system described is
composed of a finite number of states; sometimes, this is indeed the case, while at other times this is
specifying the sequence of events that an object goes through during its lifetime in response
to events. As an example, the following state machine diagram shows the states that a door goes
ADVANTAGES: With statecharts you describe behavior in a single place instead of having it
behavior/logic and presentation (in case of using it in a frontend). Both of these will be easier to
TYPES
Behavioral State Machine Diagram. It captures the behavior of an entity present in the system. It is used
to represent the specific implementation of an element. ...
Protocol State Machine Diagram. These diagrams are used to capture the behavior of a protocol
10.0 DESIGN OF INPUT, OUTPUT AND FILE STRUCTUE
Inputs to System Design
Statement of work
Requirement determination plan
Current situation analysis
Proposed system requirements including a conceptual data model, modified DFDs, and
Metadata (data about data).
Logical Design
Logical design pertains to an abstract representation of the data flow, inputs, and outputs of the system.
It describes the inputs (sources), outputs (destinations), databases (data stores), procedures (data flows)
all in a format that meets the user requirements.
While preparing the logical design of a system, the system analyst specifies the user needs at level of
detail that virtually determines the information flow into and out of the system and the required data
sources. Data flow diagram, E-R diagram modeling are used.
Physical Design
Physical design relates to the actual input and output processes of the system. It focuses on how data is
entered into a system, verified, processed, and displayed as output.
It produces the working system by defining the design specification that specifies exactly what the
candidate system does. It is concerned with user interface design, process design, and data design.
Specifying the input/output media, designing the database, and specifying backup procedures.
Planning system implementation.
Devising a test and implementation plan, and specifying any new hardware and software.
Updating costs, benefits, conversion dates, and system constraints.
Architectural Design
It is also known as high level design that focuses on the design of system architecture. It describes the
structure and behavior of the system. It defines the structure and relationship between various modules
of system development process.
Detailed Design
It is representation of organizational data which includes all the major entities and relationship. System
analysts develop a conceptual data model for the current system that supports the scope and
requirement for the proposed system.
The main aim of conceptual data modeling is to capture as much meaning of data as possible. Most
organization today use conceptual data modeling using E-R model which uses special notation to
represent as much meaning about data as possible.
It is a technique used in database design that helps describe the relationship between various entities of
an organization.
ENTITY − It specifies distinct real world items in an application. For example: vendor, item,
student, course, teachers, etc.
RELATIONSHIP − They are the meaningful dependencies between entities. For example, vendor
supplies items, teacher teaches courses, then supplies and course are relationship.
ATTRIBUTES − It specifies the properties of relationships. For example, vendor code, student
name. Symbols used in E-R model and their respective meanings −
The following table shows the symbols used in E-R model and their significance −
Symbol Meaning
Entity
Weak Entity
Relationship
Identity Relationship
Attributes
Key Attributes
Multivalued
Composite Attribute
Derived Attributes
Total Participation of E2 in R
Three types of relationships can exist between two sets of data: one-to-one, one-to-many, and many-to-
many.
File Organization
Serial − Records are stored in chronological order (in order as they are input or occur). Examples
− Recording of telephone charges, ATM transactions, Telephone queues.
Sequential − Records are stored in order based on a key field which contains a value that
uniquely identifies a record. Examples − Phone directories.
Direct (relative) − Each record is stored based on a physical address or location on the device.
Address is calculated from the value stored in the record’s key field. Randomizing routine or
hashing algorithm does the conversion.
Indexed − Records can be processed both sequentially and non-sequentially using indexes.
Comparision
File Access
One can access a file using either Sequential Access or Random Access. File Access methods allow
computer programs read or write records in a file.
Sequential Access
Every record on the file is processed starting with the first record until End of File (EOF) is reached. It is
efficient when a large number of the records on the file need to be accessed at any given time. Data
stored on a tape (sequential access) can be accessed only sequentially.
Records are located by knowing their physical locations or addresses on the device rather than their
positions relative to other records. Data stored on a CD device (direct-access) can be accessed either
sequentially or randomly.
Master file − It contains the current information for a system. For example, customer file,
student file, telephone directory.
Table file − It is a type of master file that changes infrequently and stored in a tabular format.
For example, storing Zipcode.
Transaction file − It contains the day-to-day information generated from business activities. It is
used to update or process the master file. For example, Addresses of the employees.
Temporary file − It is created and used whenever needed by a system.
Mirror file − They are the exact duplicates of other files. Help minimize the risk of downtime in
cases when the original becomes unusable. They must be modified each time the original file is
changed.
Log files − They contain copies of master and transaction records in order to chronicle any
changes that are made to the master file. It facilitates auditing and provides mechanism for
recovery in case of system failure.
Archive files − Backup files that contain historical versions of other files.
Input Design
In an information system, input is the raw data that is processed to produce output. During the input
design, the developers must consider the input devices such as PC, MICR, OMR, etc.
Therefore, the quality of system input determines the quality of system output. Welldesigned input
forms and screens have following properties −
It should serve specific purpose effectively such as storing, recording, and retrieving the
information.
It ensures proper completion with accuracy.
It should be easy to fill and straightforward.
It should focus on user’s attention, consistency, and simplicity.
All these objectives are obtained using the knowledge of basic design principles regarding −
o What are the inputs needed for the system?
o How end users respond to different elements of forms and screens.
It is important to design appropriate data input methods to prevent errors while entering data. These
methods depend on whether the data is entered by customers in forms manually and later entered by
data entry operators, or data is directly entered by users on the PCs.
Input integrity controls include a number of methods to eliminate common input errors by end-users.
They also include checks on the value of individual fields; both for format and the completeness of all
inputs.
Audit trails for data entry and other system operations are created using transaction logs which gives a
record of all changes introduced in the database to provide security and means of recovery in case of
any failure.
Output Design
The design of output is the most important task of any system. During output design, developers identify
the type of outputs needed, and consider the necessary output controls and prototype report layouts.
To develop output design that serves the intended purpose and eliminates the production of
unwanted output.
To develop the output design that meets the end users requirements.
To deliver the appropriate quantity of output.
To form the output in appropriate format and direct it to the right person.
To make the output available on time for making good decisions.
External Outputs
Manufacturers create and design external outputs for printers. External outputs enable the system to
leave the trigger actions on the part of their recipients or confirm actions to their recipients.
Some of the external outputs are designed as turnaround outputs, which are implemented as a form
and re-enter the system as an input.
Internal outputs
Internal outputs are present inside the system, and used by end-users and managers. They support the
management in decision making and reporting.
Detailed Reports − They contain present information which has almost no filtering or restriction
generated to assist management planning and control.
Summary Reports − They contain trends and potential problems which are categorized and
summarized that are generated for managers who do not want details.
Exception Reports − They contain exceptions, filtered data to some condition or standard before
presenting it to the manager, as information.
Output integrity controls include routing codes to identify the receiving system, and verification
messages to confirm successful receipt of messages that are handled by network protocol.
Printed or screen-format reports should include a date/time for report printing and the data. Multipage
reports contain report title or description, and pagination. Pre-printed forms usually include a version
number and effective date.
Forms Design
Both forms and reports are the product of input and output design and are business document
consisting of specified data. The main difference is that forms provide fields for data input but reports
are purely used for reading. For example, order forms, employment and credit application, etc.
To keep the screen simple by giving proper sequence, information, and clear captions.
To meet the intended purpose by using appropriate forms.
To ensure the completion of form with accuracy.
To keep the forms attractive by using icons, inverse video, or blinking cursors etc.
To facilitate navigation.
Types of Forms
Flat Forms
It is a single copy form prepared manually or by a machine and printed on a paper. For
additional copies of the original, carbon papers are inserted between copies.
It is a simplest and inexpensive form to design, print, and reproduce, which uses less volume.
These are papers with one-time carbons interleaved into unit sets for either handwritten or
machine use.
Carbons may be either blue or black, standard grade medium intensity. Generally, blue carbons
are best for handwritten forms while black carbons are best for machine use.
These are multiple unit forms joined in a continuous strip with perforations between each pair
of forms.
It is a less expensive method for large volume use.
They use carbonless papers which have two chemical coatings (capsules), one on the face and
the other on the back of a sheet of paper.
When pressure is applied, the two capsules interact and create an image.