You are on page 1of 73

System Development fundamentals

UNIT- 1 BCA

Instructor: Er. Sujan Devkota,


Asst. Professor, HSM

Er. Sujan Devkota https://sujandevkota.com.np/ 1


System Development Environment
➢ Systems analysis and design, as it is sometimes called, is the process of creating
and maintaining information systems. This process concerns information systems,
not just computer programs.

➢ Systems development is systematic process which includes phases such as planning,


analysis, design, deployment, and maintenance.

❖ System Analysis is a process of collecting and interpreting facts, identifying


the problems, and decomposition of a system into its components.

❖ System analysis is conducted for the purpose of studying a system or its parts in
order to identify its objectives.

❖ Analysis consists of those activities that enable a person to understand and


specify what the new system should accomplish

Er. Sujan Devkota https://sujandevkota.com.np/ 2


System Development Environment
➢ Systems Design : It is a process of ➢ In other words, systems design
planning a new business system or describes how the system will actually
replacing an existing system by defining work. It specifies in detail all the
its components or modules to satisfy components of the solution system and
the specific requirements. how they work together.

➢ Systems design consists of those


activities that enable a person to
describe in detail how the information
system will actually be implemented to
provide the needed solution.

Er. Sujan Devkota https://sujandevkota.com.np/ 3


System Analysis and Design

➢ In a nutshell, systems analysis and design provides the tools and techniques you
need as an information system developer to complete the development process:

❖ 1. Understand the need (business need).

❖ 2. Capture the vision.

❖ 3. Define a solution.

❖ 4. Communicate the vision and the solution.

❖ 5. Build the solution or direct others in building the solution.

❖ 6. Confirm that the solution meets the need.

❖ 7. Launch the solution application.

Er. Sujan Devkota https://sujandevkota.com.np/ 4


System Analysis and Design

Er. Sujan Devkota https://sujandevkota.com.np/ 5


Information systems analysis and design

➢ Information systems analysis and design is a complex, challenging, and


stimulating organizational process that a team of business and systems
professionals uses to develop and maintain computer-based information
systems.

➢ The complex organizational process whereby computer-based information


systems are developed and maintained.

Er. Sujan Devkota https://sujandevkota.com.np/ 6


A Modern Approach to Systems Analysis and Design

➢ 1950s: All applications had to be developed in machine language or


assembly language. They had to be developed from scratch because due to
the absence of software industry.
➢ 1960s: Smaller, faster, less expensive computers, beginning of the software
industry, use in-house development.
➢ 1970s: Realized how expensive to develop customized information system
for every application , started development of database management
system.
➢ 1980s: , The software industry expended greatly, CASE(computer aided
software engineering) tools.

Er. Sujan Devkota https://sujandevkota.com.np/ 7


A Modern Approach to Systems Analysis and Design

➢ Started writing application software in OOP languages, graphics were used,


developed less software in-house and bought more from software vendors.
➢ 1990s: focus on system integration, GUI(Graphical user interface)
applications, client/server platforms, Internet.
➢ The new century: Web application development, wireless PDAs (personal
digital assistants, e.g. pocket PCs), ASP(application service provider).
❖ Application Software: Computer software designed to support
organizational functions or processes.
❖ Systems Analyst : Organizational role most responsible for analysis and
design of information systems.

Er. Sujan Devkota https://sujandevkota.com.np/ 8


Information System

➢ A system is a set of related components that produces specific results.

➢ An information system combines technology, people, and data to provide


support for business functions such as order processing, inventory control,
human resources, accounting, and many more.

➢ A set of interrelated components that collect, process, store, and provide


as output the information needed to complete business tasks. OR

➢ An information system is integrated and co-ordinate network of


components, which combine together to convert data into information.

Er. Sujan Devkota https://sujandevkota.com.np/ 9


Information System Components

➢ All information systems use people, hardware, software, data, and network
resources to perform input, processing, output, storage, and control activities that
transform data resources into information products.
➢ Data resources are transformed by information processing activities into a variety
of information products for end users.
➢ Information processing consists of the system activities of input, processing, output,
storage, and control.
➢ People, hardware, software, data, and networks are the five basic resources of
information systems.
➢ Information processing/ System Activities consists of the system activities of input,
processing, output, storage, and control

Er. Sujan Devkota https://sujandevkota.com.np/ 10


Level of Organization and IS
Unstructured: These decisions require judgment, evaluation and insight to solve the problem

Semi Structured: These decisions have


elements of both structured and semi
structured decisions.

Structured: means having processes / Set of Procedures in place to handle a situation.


Er. Sujan Devkota https://sujandevkota.com.np/ 11
Level of Organization and IS

Er. Sujan Devkota https://sujandevkota.com.np/ 12


Types of IS

➢ Transaction Processing Systems (TPS):A transaction processing system can


be defined as a computer based system that captures, classifies, stores,
maintains, updates and retrieves transaction data for record keeping and for
input to other types of CBIS.
❖ Record day-to-day transactions such as customer orders, bills, inventory.
❖ Helps supervisors by generating databases needed for other information
Systems.
❖ Examples: recording customer orders, bills, inventory levels, and
production output.

Er. Sujan Devkota https://sujandevkota.com.np/ 13


Types of IS
➢ Management Information Systems (MIS)
❖ Summarizes the detailed data of the transaction processing system.
❖ Produces standard reports for middle-level managers.
❖ Examples: Production schedule and budget summaries.

Er. Sujan Devkota https://sujandevkota.com.np/ 14


Types of IS
➢ Management Information Systems (MIS)

❖ A Management Information System is an integrated user-machine system for


providing information to support the operations, management, analysis,
and decision-making functions in an organization.

➢ Decision Support Systems (DSS):

❖ A Decision Support System (DSS) is an application for information systems that


helps to make decisions. DSS is widely used in the planning, analysis and search
for solutions for errors.

❖ A database, model base & applications are the components of the decision
support system. Production, finance, and marketing are the main areas of
operation of DSS.

Er. Sujan Devkota https://sujandevkota.com.np/ 15


Developing Information Systems

➢ Systems development methodology:


❖ A standard process followed in an organization to conduct all the steps
necessary to analyze, design, implement, and maintain information
systems.
➢ Systems development life cycle (SDLC):
❖ The systems development life cycle (SDLC) is a common methodology for
systems development in many organizations; it features several phases
that mark the progress of the systems analysis and design effort.
❖ Framework that identifies all the activities required to research, build,
deploy, and often maintain an information system.

Er. Sujan Devkota https://sujandevkota.com.np/ 16


Phases in SDLC

For References: Visit page no 8 of book Allen


Dennis, SAD , 6th Edition
Er. Sujan Devkota https://sujandevkota.com.np/ 17
Planning

➢ The first phase of the SDLC in which an organization’s total information


system needs are identified, analyzed, prioritized, and arranged.

➢ The purpose of this phase is to perform a preliminary investigation to


evaluate an IT-related business opportunity or problem.

➢ A key part of the preliminary investigation is a feasibility study that reviews


anticipated costs and benefits and recommends a course of action based on
operational, technical, economic, and time factors.

Er. Sujan Devkota https://sujandevkota.com.np/ 18


Analysis[ Problem]

➢ The second phase of the SDLC in which system requirements are studied
and structured.

➢ The purpose of the systems analysis phase is to build a logical model of


the new system.[ Analysis Modeling]

➢ The deliverable for the systems analysis phase is the system requirements
document.

➢ The system requirements document describes management and user


requirements, costs and benefits, and outlines alternative development
strategies

Er. Sujan Devkota https://sujandevkota.com.np/ 19


Design[Solution]
➢ The third phase of the SDLC in which the description of the recommended solution is
converted into logical and then physical system specifications.
➢ The design phase of software development deals with transforming the customer
requirements as described in the SRS documents into a form implementable using
a programming language.
➢ At this stage, the user interface is designed and necessary outputs, inputs, and
processes are identified.
➢ During the systems design phase, the application architecture is also determined,
which programmers will use to transform the logical design into program modules
and code.
➢ System design is a process through which requirements are translated into a
“blueprint” for constructing the software.

Er. Sujan Devkota https://sujandevkota.com.np/ 20


Implementation

➢ The fourth phase of the SDLC, in which the information system is coded,
tested, installed, and supported in the organization.

➢ During the systems implementation phase, the new system is constructed.

➢ Includes : Code, documentation, training procedures, and support capabilities

➢ The systems implementation phase also includes an assessment, called a


systems evaluation, to determine whether the system operates properly and if
costs and benefits are within expectations.

Er. Sujan Devkota https://sujandevkota.com.np/ 21


Analysis , Design and Implementation

Er. Sujan Devkota https://sujandevkota.com.np/ 22


Maintenance

➢ The final phase of the SDLC, in which an information system is systematically


repaired and improved.

➢ New versions or releases of software with associated updates to


documentation, training, and support

➢ There are four types of software maintenance:

❖ Corrective Software Maintenance.

❖ Adaptive Software Maintenance.

❖ Perfective Software Maintenance.

❖ Preventive Software Maintenance.

Er. Sujan Devkota https://sujandevkota.com.np/ 23


The heart Of The System Development Process

Er. Sujan Devkota https://sujandevkota.com.np/ 24


Software Process Model

➢ A software process model is an abstract representation of a process.

➢ It presents a description of a process from some particular perspective.

➢ Process models prescribe a distinct set of activities, actions, tasks and


milestones (deliverables) required to high quality software.

➢ Process Activities

Er. Sujan Devkota https://sujandevkota.com.np/ 25


Waterfall Model

➢ When requirements for a problems are well understood then this model is
used in which work flow from communication to deployment is linear.

▪ The waterfall model is also called as 'Linear sequential model' or 'Classic


life cycle model'.

▪ In this model, each phase is executed completely before the beginning of the
next phase. Hence the phases do not overlap in waterfall model.

▪ In this model, feedback is taken after each phase to ensure that the project is
on the right path.

Er. Sujan Devkota https://sujandevkota.com.np/ 26


When to use Waterfall

➢ Requirements are very well known, clear and fixed

➢ Product definition is stable

➢ Technology is understood

➢ There are no ambiguous (unclear) requirements

➢ Sufficient resources with required expertise are available freely

➢ The project is short

Er. Sujan Devkota https://sujandevkota.com.np/ 27


Different Approaches to Improving Development

➢ Attempts to make systems development less of an art and more of a science


are usually referred to as systems engineering or software engineering:

❖ CASE TOOLS

❖ Rapid Application Development

❖ Service-Oriented Architecture

❖ Agile Methodologies

❖ eXtreme Programming

❖ Object-Oriented Analysis And Design

Er. Sujan Devkota https://sujandevkota.com.np/ 28


CASE Tools
➢ CASE Tools is stands for ❖ Accompa, ➢ Coding Tools
Computer Aided Software ❖ casecomplete ❖ Eclipse,
Engineering Tools. As the ❖ Jama software ❖ Net-Beans,
name suggests, these are
➢ Diagram Tools ❖ Atom
the tools which are used to
❖ Visual Paradigm ➢ Testing Tools
automate the processes
while developing ❖ Lucid Chart ❖ Testpad

software product through ❖ Smart Draw ❖ TestRail


software development life ➢ Maintenance Tool ❖ Xray
cycle. ❖ Bugzilla for tracking
➢ Analysis Tools defects
❖ Accept 360,

Er. Sujan Devkota https://sujandevkota.com.np/ 29


CASE Tools
➢ Prototyping Tools ➢ Configuration Management Tools
❖ Figma ❖ Git
❖ Justinmind ❖ Accu Rev
❖ InVision
❖ Uxpin
➢ Quality Assurance Tools
❖ Selenium,
❖ Appium

Er. Sujan Devkota https://sujandevkota.com.np/ 30


Rapid Application Development
• Rapid application development (RAD) is a team-based technique that speeds up
information systems development and produces a functioning information system.
• The entire project is divided into various small modules and each module is
allocated to different party to finish the working of the small modules. After that,
all small modules are combined together to obtain the final project.

• Using the RAD model, software product is developed in a short period of time.

• The main features of RAD model are that it focuses on the reuse of templates, tools,
processes, and code.
➢ The main objective of all RAD approaches is to cut development time and expense by
involving users in every phase of systems development.

Er. Sujan Devkota https://sujandevkota.com.np/ 31


Rapid Application Development

➢ RAD process allows users to examine a working model as early as possible,


determine if it meets their needs, and suggest necessary changes.
When to use RAD Methodology?
 When a system needs to be produced in a
short span of time (2-3 months)
 When the requirements are known
 When the user will be involved all through
the life cycle
 When technical risk is less
 When a budget is high enough to afford
designers for modeling along with the cost of
automated tools for code generation

Er. Sujan Devkota https://sujandevkota.com.np/ 32


Agile methodology

➢ Agile literally means “moving quick and easy”. In terms of software


development, Agile means delivering small chunks of stand-alone and
workable codes that are pushed to production frequently.

➢ The main concern of agile methodologies is the ability to embrace changes


which are very likely to happen in environments which lack predictability .

➢ To achieve the objective, agile methodologies use three key principles: (1) a
focus on adaptive methodologies, (2) a focus on people, and (3) a focus on
self-adaptive processes.

Er. Sujan Devkota https://sujandevkota.com.np/ 33


Agile methodology

➢ Agile methodologies are approaches to product development that are aligned


with the values ​and principles described in the Agile Manifesto for software
development.

➢ Agile methodologies aim to deliver the right product, with incremental


and frequent delivery of small chunks of functionality, through small
cross-functional self-organizing teams, enabling frequent customer
feedback and course correction as needed.

Er. Sujan Devkota https://sujandevkota.com.np/ 34


Agile methodology- Agile Manifesto

➢ The Agile Manifesto is a declaration of the values and principles expressed in


agile methodology.

➢ Values

1. Individuals and interactions over processes and tools

2. Working software over comprehensive documentation

3. Customer collaboration over contract negotiation

4. Responding to change over following a plan

Er. Sujan Devkota https://sujandevkota.com.np/ 35


Agile Manifesto

Principles

1. Customer satisfaction through continuous delivery of the product

2. Divide large chunks of work into smaller and achievable tasks for quicker
completion and easier integration of changes

3. Adhere to the decided timeframe for the delivery of a working product

4. All stakeholders must frequently collaborate to ensure that the project is


going in the correct direction

5. Create a supportive environment to motivate team members and


encouraging them to get the job done

Er. Sujan Devkota https://sujandevkota.com.np/ 36


Agile methodology

Principles

6. Prefer face-to-face communication over other methods

7. Working software is the primary measure of progress

8. Agile processes promote sustainable development. The sponsors,


developers, and users should be able to maintain a constant pace indefinitely.

9. Maintain the quality of the product by paying attention to technical details

10.Maintain simplicity

11.Promote self-organization in the team

12.Regularly reflect on your performance for continuous improvement

Er. Sujan Devkota https://sujandevkota.com.np/ 37


Agile methodology

➢ Agile Process Models

❖ Extreme Programming (XP)

❖ SCRUM

❖ Adaptive Software Development (ASD)

❖ etc

Er. Sujan Devkota https://sujandevkota.com.np/ 38


Extreme Programming (XP)

➢ Extreme Programming (XP) is an agile software development framework


that aims to produce higher quality software, higher quality of life for the
development team and its ability to properly adapt to the changing needs
of the customer or client.
➢ It's a lightweight software development discipline for the team that helps
organizations to produce high-quality software.
➢ When Applicable
➢ Dynamically changing software requirements
➢ Risks caused by fixed time projects using new technology
➢ Small, co-located extended development team
➢ The technology you are using allows for automated unit and
functional tests
Er. Sujan Devkota https://sujandevkota.com.np/ 39
Extreme Programming (XP)

➢ Extreme Programming (XP) is based on values.

➢ XP has five core values -- Courage, Feedback, Respect, Communication,


and Simplicity.
Communication: Everyone is part of the team
and conduct face to face commination daily. All
Stakeholders works together on everything
from requirements to code. All of them are
involved to create the best solution of facing
problem that team can together.

Er. Sujan Devkota https://sujandevkota.com.np/ 40


Extreme Programming (XP)

➢ Simplicity: We will do what is needed and asked for, but no more. This will
maximize the value created for the investment made to date. We will take
small simple steps to our goal and mitigate failures as they happen. We will
create something we are proud of and maintain it long term for reasonable
costs.

➢ Feedback: We will take every iteration commitment seriously by delivering


working software. We demonstrate our software early and often then listen
carefully and make any changes needed. We will talk about the project and
adapt our process to it, not the other way around.

Er. Sujan Devkota https://sujandevkota.com.np/ 41


Extreme Programming (XP)

➢ Respect: Everyone gives and feels the respect they deserve as a valued team
member. Everyone contributes value even if it's simply enthusiasm.
Developers respect the expertise of the customers and vice versa.
Management respects our right to accept responsibility and receive authority
over our own work.

➢ Courage: We will tell the truth about progress and estimates. We don't
document excuses for failure because we plan to succeed. We don't fear
anything because no one ever works alone. We will adapt to changes when
ever they happen.

Er. Sujan Devkota https://sujandevkota.com.np/ 42


Principles of extreme programming

➢ Most researchers denote 5 XP principles better than big ones made at once.
as: ➢ Embracing change. If a client thinks a
➢ Rapid feedback. Team members product needs to be changed,
understand the given feedback and react programmers should support this
to it right away. decision and plan how to implement

➢ Assumed simplicity. Developers need new requirements.

to focus on the job that is important at ➢ Quality work. A team that works well,
the moment . makes a valuable product and feels

➢ Incremental changes. Small changes proud of it.

made to a product step by step work

Er. Sujan Devkota https://sujandevkota.com.np/ 43


Rules of XP/ Process Activities

Er. Sujan Devkota https://sujandevkota.com.np/ 44


Rules of XP/ Process Activities

➢ Writing unit tests before programming and keeping all of the tests running at
all times. The unit tests are automated and eliminates defects early, thus
reducing the costs.

➢ Starting with a simple design just enough to code the features at hand and
redesigning when required.

➢ Programming in pairs (called pair programming), with two programmers at


one screen, taking turns to use the keyboard. While one of them is at the
keyboard, the other constantly reviews and provides inputs.

Er. Sujan Devkota https://sujandevkota.com.np/ 45


Rules of XP/ Process Activities

➢ Integrating and testing the whole system several times a day.

➢ Putting a minimal working system into the production quickly


and upgrading it whenever required.

➢ Keeping the customer involved all the time and obtaining


constant feedback.

Er. Sujan Devkota https://sujandevkota.com.np/ 46


Service Oriented Architecture

➢ An architectural pattern in computer software design in which application


components provide services to other components via a communications
protocol, typically over a network.

➢ The principles of service-orientation are independent of any vendor, product


or technology.

➢ Service-Oriented Architecture (SOA) is an architectural approach in which


applications make use of services available in the network.

➢ We can say that service-oriented architecture is simply a group of services


that can be called upon to provide specific functions.

Er. Sujan Devkota https://sujandevkota.com.np/ 47


Service Oriented Architecture

➢ There are two major roles within Service-oriented Architecture:


❖ Service provider: The service provider is the maintainer of the service
and the organization that makes available one or more services for
others to use. To advertise services, the provider can publish them in a
registry, together with a service contract that specifies the nature of the
service, how to use it, the requirements for the service, and the fees
charged.
❖ Service consumer: The service consumer can locate the service
metadata in the registry and develop the required client components to
bind and use the service.

Er. Sujan Devkota https://sujandevkota.com.np/ 48


Service Oriented Architecture

Er. Sujan Devkota https://sujandevkota.com.np/ 49


Service Oriented Architecture
➢ Advantages of SOA: different sources, independent of the
❖ Service reusability: In SOA, platform.
applications are made from existing ❖ Availability: SOA facilities are easily
services. Thus, services can be reused available to anyone on request.
to make many applications. ❖ Reliability: SOA applications are more
❖ Easy maintenance: As services are reliable because it is easy to debug
independent of each other they can be small services rather than huge codes
updated and modified easily without ❖ Scalability: Services can run on
affecting other services. different servers within an
❖ Platform independent: SOA allows environment, this increases scalability
making a complex application by
combining services picked from

Er. Sujan Devkota https://sujandevkota.com.np/ 50


Service Oriented Architecture

➢ Disadvantages of SOA:

❖ High overhead: A validation of input parameters of services is done


whenever services interact this decreases performance as it increases
load and response time.

❖ High investment: A huge initial investment is required for SOA.

❖ Complex service management: When services interact they exchange


messages to tasks. the number of messages may go in millions. It becomes
a cumbersome task to handle a large number of messages.

Er. Sujan Devkota https://sujandevkota.com.np/ 51


Object oriented analysis and Design
➢ It’s a method for analyzing, analysis(OOA) there is an emphasis
designing a system by applying the on finding and describing the objects
object-orientated concepts, and or concepts in the problem domain.
develop a set of graphical system➢ During object-oriented design
models during the development life (OOD) (or simply, object design) there
cycle of the software. is an emphasis on defining software
➢ Systems development methodologies objects and how they collaborate to
and techniques based on objects fulfill the requirements.
rather than data or processes.

➢ During object-oriented

Er. Sujan Devkota https://sujandevkota.com.np/ 52


Object oriented analysis and Design

➢ There are three main tools used in object-oriented analysis and design techniques :

❖ Class diagrams/templates.

❖ Object diagrams.

❖ Object state diagrams.

➢ Class diagrams are used to model key abstractions in the problem domain and their
relationships with each other.

➢ Object diagrams are used to model the interactions between objects, whereas
object state diagrams model the dynamic behavior within a single object.

➢ An object state diagram shows all the possible states of an object and the allowed
transition between the states.

Er. Sujan Devkota https://sujandevkota.com.np/ 53


Object oriented analysis and Design
➢ The primary tasks in object-oriented organizations, concepts, or events.
analysis (OOA) are: Next, Object relationships are

❖ 1. Identifying objects and classes. documented on object diagrams. The

❖ 2. Identifying the object attributes and services of each class

relationships. are then identified and documented in


class templates.
❖ 3. Identifying the attributes.

❖ 4. Identifying services.

➢ The first step involves identifying


candidate objects and classes, which
may be people, places, things,

Er. Sujan Devkota https://sujandevkota.com.np/ 54


Object oriented analysis and Design

➢ Similarly, in object-oriented design, there are four key steps to be performed:

❖ 1. Defining object life cycles.

❖ 2. Defining class relationships.

❖ 3. Defining service logic.

❖ 4. Completing class definition

➢ The first step involves analyzing life cycle of each object and formalizing the life cycle
in an object state diagram. Next, class relationships are defined in a class diagram.
Each service that is provided by a class is defined including any logic that is
necessary. Finally, the class and object diagrams are completed along with all class
templates

Er. Sujan Devkota https://sujandevkota.com.np/ 55


Structured vs. OOAD
Structured Analysis Object-Oriented Analysis
The main focus is on process and procedures of The main focus in on data structure and real-world
system. objects that are important.

It is suitable for well-defined projects with stable It is suitable for large projects with changing user
user requirements. requirements.

Risk while using this analysis technique is high and Risk while using this analysis technique is low and
reusability is also low. reusability is also high.

Structuring requirements include DFDs (Data Flow Requirement engineering includes Use case model
Diagram), Structured English, ER (Entity (find Use cases, Flow of events, Activity Diagram),
Relationship) diagram, CFD (Control Flow Diagram), the Object model (find Classes and class relations,
Data Dictionary, Decision table/tree, State Object interaction, Object to ER mapping), State
transition diagram. chart Diagram, and deployment diagram.

This technique is old and is not preferred usually. This technique is new and is mostly preferred.

Er. Sujan Devkota https://sujandevkota.com.np/ 56


System Modeling

➢ System modeling is the process of developing models of the system, with


each model representing a different perspectives of that system.

➢ The models are usually based on graphical notation, which is almost always
based on the notations in the Unified Modeling Language (UML).

➢ Models are used during the analysis process to help to elicit the requirements,
during the design process to describe the system to engineers, and after
implementation to document the system structure and operation.

➢ The unified modeling language become the standard modeling language for
object-oriented modeling.

Er. Sujan Devkota https://sujandevkota.com.np/ 57


Unified Modeling Language (UML)

➢ Use case diagram: It shows the interaction between a system and it’s
environment (users or systems) within a particular situation.
➢ Class diagram: It shows the different objects, their relationship, their
behaviors, and attributes.
➢ Sequence diagram: It shows the interactions between the different objects in
a sequential order, i.e. the order in which these interactions take place.
➢ State machine diagram: It shows how the system respond to external and
internal events.
➢ Activity diagram: It shows the flow of the data between the processes in the
system.

Er. Sujan Devkota https://sujandevkota.com.np/ 58


Origins of Software

Introduction: If you wanted to write ➢ SYSTEMS ACQUISITION: Internal


application software, you did it in-house, corporate information systems
and you wrote the software from scratch. departments now spend a smaller and
Today there are many different sources of smaller proportion of their time and
software and firms that produce software, effort on developing systems from
rather than in the information systems scratch. Companies continue to spend
department of a corporation. But for those relatively little time and money on
of you who do go on to work in a corporate traditional software development and
information systems department, the focus maintenance. Instead, they invest in
is no longer exclusively on in-house packaged software, open-source
development. software, and outsourced services.

Er. Sujan Devkota https://sujandevkota.com.np/ 59


Outsourcing
➢ Outsourcing: If one organization develops or runs a computer application for
another organization, that practice is called outsourcing.

➢ Outsourcing includes a spectrum of working arrangements. At one extreme is


having a firm develop and run your application on its computers—all you do is
supply input and take output.

➢ A common example of such an arrangement is a company that runs payroll


applications for clients so that clients do not have to develop an independent in-
house payroll system.

Er. Sujan Devkota https://sujandevkota.com.np/ 60


Benefits of Outsourcing
➢ Better Quality:
❖ Sometimes, another firm is just superior at delivering a service or building
products than your firm. Thus, it is the best option to outsource that service to
another firm for getting the best possible results from that service or product.
➢ Improved return on investment:
❖ A pillar of outsourcing is its ability to shorten the investment in equipment and
plants required for the production of the products. If you can maintain the
volume of the profits for the product and not waste too much on supplier margins
than the return on investment of the firm will increase.
➢ Lower cost:
❖ Some suppliers have a business in their support; outsourcing to low-cost labour
can minimize the labour cost of the firm.

Er. Sujan Devkota https://sujandevkota.com.np/ 61


Limitations of Outsourcing

➢ Quality exposure: There is a possibility of quality exposure of a service or


product to be inadequate, due to manufacturing or industrial consequences. It
can be due to distinct elements such as information inequality, immense
supplier-switching cost, feeble buyer-supplier communication, and scarcity of
supplier capabilities.

➢ Excellence of services: Service legal agreement is a measure of nature of


service in the outsourcing obligations. If an obligation is not clearly
determined, then there is no measure of quality or service legal agreement
established.

Er. Sujan Devkota https://sujandevkota.com.np/ 62


Limitations of Outsourcing

➢ Productivity: Occasionally, offshore outsourcing is used to reduce the extra


cost, but it can have an adverse impression on the capacity of the company. In
such circumstances, it is better to spend on technology rather in outsourcing,
as it will eventually improve productivity.

➢ Work-force: Variations is often higher under an outsourcer, in such a


situation, proficiency of the main firm may be vanished, which is out of the
control of the firm. Breakdown of deliveries at a precise time: The target
pledged by the outsourcing suppliers usually fails. It occurs because
merchants overestimate their capabilities.

Er. Sujan Devkota https://sujandevkota.com.np/ 63


Managing the Information Systems Project

➢ Project Manager:

❖ A systems analyst with a diverse set of skills—management, leadership,


technical, conflict management, and customer relationship—who is
responsible for initiating, planning, executing, and closing down a project.

➢ Project

❖ A planned undertaking of related activities to reach an objective that has a


beginning and an end.

➢ Deliverable

❖ An end product of an SDLC phase.

Er. Sujan Devkota https://sujandevkota.com.np/ 64


Project Manager

➢ A project manager is a character who has the overall responsibility for the
planning, design, execution, monitoring, controlling and closure of a project. A
project manager represents an essential role in the achievement of the
projects.

➢ Responsibilities of a Project Manager:

Er. Sujan Devkota https://sujandevkota.com.np/ 65


Managing the Information Systems Project

➢ Project Management:

❖ Project management is an important aspect of the development of


information systems and a critical skill for a systems analyst.

❖ The focus of project management is to ensure that systems development


projects meet customer expectations and are delivered within budget
and time constraints.

❖ Creating and implementing successful projects requires managing the


resources, activities, and tasks needed to complete the information
systems project.

Er. Sujan Devkota https://sujandevkota.com.np/ 66


Need of software project management

➢ There are three needs for software project management. These are:

❖ Time

❖ Cost

❖ Quality

➢ It is an essential part of the software organization to deliver a quality


product, keeping the cost within the clients budget and deliver the project
as per schedule.

➢ There are various factors, both external and internal, which may impact this
triple factor.

Er. Sujan Devkota https://sujandevkota.com.np/ 67


Managing the Information Systems Project

➢ The project management process involves four phases:

❖ 1. Initiating the project

❖ 2. Planning the project

❖ 3. Executing the project

❖ 4. Closing down the project

➢ Initiating a project: During project initiation, the project manager performs


several activities to assess the size, scope, and complexity of the project and to
establish procedures to support subsequent activities.
• Page No: 50

Er. Sujan Devkota https://sujandevkota.com.np/ 68


Initiating a project

➢ The types of activities that will perform when initiating a project are
summarized below:

❖ Establishing the project initiation team:

❖ Establishing a relationship with the customer

❖ Establishing the project initiation plan

❖ Establishing management procedures

❖ Establishing the project management environment and project workbook

❖ Developing the project charter Page no 54

Er. Sujan Devkota https://sujandevkota.com.np/ 69


Planning the project: Exam

Er. Sujan Devkota https://sujandevkota.com.np/ 70


Executing the Project

➢ Project execution puts the Baseline Project Plan into action.

➢ Within the context of the SDLC, project execution occurs primarily during the
analysis, design, and implementation phases.
Page No 61:
Joseph [I Book]

Er. Sujan Devkota https://sujandevkota.com.np/ 71


Closing down the project

➢ The focus of project closedown is to bring the project to an end.

➢ Projects can conclude with a natural or unnatural termination.

➢ A natural termination occurs when the requirements of the project have been
met—the project has been completed and is a success.

➢ An unnatural termination occurs when the project is stopped before


completion.

➢ The most likely reasons for the unnatural termination of a project relate to
running out of time or money, or both .
• Page no: 62

Er. Sujan Devkota https://sujandevkota.com.np/ 72


Project management software

➢ A wide variety of automated project management tools is available to help


you manage a development project
➢ New versions of these tools are continuously being developed and released by
software vendors.
➢ Most of the available tools have a set of common features that include the
ability to define and order tasks, assign resources to tasks, and easily modify
tasks and resources.
➢ For example, numerous shareware project management programs (e.g.,
OpenProj, Bugzilla, and eGroupWare) can be downloaded
➢ from the web

Er. Sujan Devkota https://sujandevkota.com.np/ 73

You might also like