How to build an Information System

Orkhan Huseynli
5 min readJul 30, 2018

If you are a programmer you have probably developed some simple or even more complex software and when talking about software development it sounds really simple to you. Yes… actually, it is!

If I were to write a program, I would simply setup a MySQL server along with Apache HTTP server, write some PHP code and here it is, I just made a program and accomplished to automate a real world process.

Well… not particularly. Because in the real world it’s not as easy as it sounds. You might probably wonder why all of those documentations, diagrams, charts, coding standards, code reviews, version control systems, tests, quality assurance and all other things are done if it was so easy, huh?

Let’s talk about how a real software products are being developed and which steps should be taken in order to develop a successful Information System.

Systems Development Life Cycle (SDLC)

Building an IS is similar to building a house. First, the house owner would describe the vision of how the house should look like to developer. Then this idea should be sketches, drawings and refined until the owner that this is what he/she wants. After that, set of detailed blueprints of the house is developed, which provides much more specific information about the house. And finally, the house is build according to the blueprints.

Building an IS using SDLC is much more like applying those steps in software development. There are many versions of SDLC out there, but the one we will be talking about consists of four fundamental phases in which each step produces a deliverable or set of deliverables. Those steps are:

  • Planning
  • Analysis
  • Design
  • Implementation

Now, let’s talk more in detail about each of those steps and look at some example of deliverables.

Planning

In some places called preliminary analysis, this phase focuses on the review of the solution. A key part of this step is feasibility analysis, which includes an analysis of the technical feasibility, economic feasibility and organizational feasibility. So, if you are running the company you would ask these questions to yourself.

Is it possible to create this? Can we afford to do this and will it provide business value? Will it be used if we build it?

This step is important to determine if the project should be started at all.

The main deliverables of this step are System request with feasibility study and Project plan, which includes work plan, standards list and risk assessment.

Analysis

This phase answers the question of who will use the system, what the system will do, and when an where it will be used. During this step, the project team investigates any current systems and develops a concept for the new system. The phase includes requirement gathering and provides initial design of the new system. Deliverable of this step is called System proposal. The proposal includes the analysis and high level initial design of the system, which includes use case diagrams, process models (often created using BPMN), data flow diagrams (DFD)and entity diagrams (ERD).

Below you can see an example of Use Case diagram for Online Shopping System:

Example of use case diagram

Following picture describes Business Process Model of simple online shopping system:

Example of Business Process Model using BPMN

The picture below shows a simple Data Flow Diagram for online shopping system:

Example of Data Flow Diagram

Design

This phase determines how the system should operate in terms of hardware, software and network infrastructure that will be in place; the user interface, forms, the reports that will be used; databases and files that will be needed. Unlike the Analysis phase, the Design phase determines exactly how the system will operate.

This step includes design strategy which clarifies whether the system will be developed by local programmers or whether its development will be outsourced, architecture and interface design, database and file specifications which defines what data will be stored and where they will be stored, and program design which defines the programs that need to be written.

This collection of deliverables is called system specifications which is later used by the programming team for implementation.

System specifications architecture report, hardware & software specifications, user interface design, physical process model, program design, database & file specifications, physical data model.

An example of physical data model is below:

Example of Physical ERD

Following picture show a simple example of Hardware & Software Specifications:

Example of Hardware & Software Sepcifications

Implementation

The final phase of the SDLC is implementation phase, during which the system is actually built. This is the most expensive and long lasting phase which gets more attention during the development process. This step includes construction in which the system is built an tested, installation in which the old system is turned of and the new system is completely installed and maintenance.

The main deliverable of this phase is, I think you would guess, is the installed system, documentation, support and change plan.

Conclusion

Although it is the most proper way of developing an Information System, most people would ommit all the planning, analysis and design part and would jump to implementation phase directly. And… would fail at last. A good software product should pass all steps of SDCL and should be documented well.

References

  1. Roth, R. M., Dennis, A., Wixom, B. H., Wixom, B. H., & Wixom, B. H. (2013). Systems analysis and design. Hoboken, NJ: John Wiley.

2. https://bus206.pressbooks.com/chapter/chapter-10-information-systems-development/

3. https://www.visual-paradigm.com/tutorials/data-flow-diagram-example-supermarket-app.jsp

4. https://www.lucidchart.com/pages/uml-use-case-diagram

5. https://www.visual-paradigm.com/support/documents/vpuserguide/3563/3564/85378_conceptual,l.html

--

--