Information System And Design

Lecture 11- Project Scheduling & Milestones.

Lecture 10- Software Configuration Management

Lecture 9- Risk Management, Risk Categories

Lecture 8.4 – Basic COCOMO Model, Intermediate Model, Detailed COCOMO Model

Lecture 8.3 – Algorithmic Strategy For Cost Effort Estimation

Lecture 8.2 – Delphi Estimation Strategy For Cost Effort

Lecture 8.1 – Analogy Estimation Strategy For Cost Effort Estimation

Lecture 7- Function Point Based FP Based Analysis

Lecture 6 – Software Metric Measurements

Lecture 5 – Project Planning Methods

Lecture 4 – Blue Prints Of Sanjog Model Study

Lecture 3- Sanjog Model Study

Lecture 2- Components & Models Of Information System.

Lecture 1 – Information System Design Basics.



Important Questions On Object Oriented Analysis And Design

Que. State advantages of object oriented design techniques.


Que. What is the complexity measures in object oriented software engineering?


Que. Identify activities undertaken in an object oriented software design approach.


Que. Describe the activities performed during requirement elicitation.


Que. Distinguish functional and non-functional requirements.


-> Click Here To DOWNLOAD complete answers.




UML Tools and Comparision Table For Various UML Tools. ArgoUML, Poseidon, Rational Rose Tool, Star UML



-Rational rose tool

-Star UML

ArgoUML: Features of ArgoUML tools are as follows.

  • All 9 UML 1.4 diagrams are supported.
  • Closely follows the UML standard.
  • Platform independent – Java 1.5+.
  • Standard UML 1.4 Metamodel.
  • XMI support.
  • Export diagrams as GIF, PNG, PS, EPS, PGML, and SVG.
  • Available in ten languages: EN, EN-GB, DE, ES, IT, RU, FR, NB, PT, ZH.
  • Advanced diagram editing and zoom.
  • Built-in design critics provide an unobtrusive review of design and suggestions for improvements.
  • Extensible modules interface.
  • OCL support.
  • Click and Go.


Poseidon UML: Features of Poseidon are as follows.

  • UML Diagram support.
  • Use case diagram support.
  • Sequence diagram support.
  • State diagram support.
  • Component diagram support.
  • Forward and reverse engineering based on Java.

Rational Rose Tool: IBM’s Rational Rose tool helps in designing the various software’s. The features of this tool are as follows:

  • Integrate the application design with development.
  • Develop application for the web.
  • Produce relevant source code for designed models.
  • Helps to create an entire level of architecture or construction.
  • UML Modelling.
  • Internet web publisher.
  • Data base schema generator.
  • Multi language development.

Star UML:

  • Accurate UML standard model.
  • Open software model format.
  • True MDA support.
  • Applicability of methodologies and platforms.
  • Excellent extensibility.
  • Software model verification function.
  • Useful Add-Ins.


Comparison Table Of UML Tools:

Tool Name Version Systems Supports Code Generation For Code Reverse Engineering
ArgoUML 3/5 Platform Independent Class Diagrams,

Use case diagrams,

Sequence Diagrams,

Collaboration Diagrams,

State Diagrams, Activity Diagrams, Deployment Diagram

C++, C#, Java, PHP4, PHP5,


Java, C++, C#, IDL
Poseidon UML 8 Platform Independent Class Diagrams,

Use case diagrams,

Sequence Diagrams,

Collaboration Diagrams,

State Diagrams, Activity Diagrams,

Java Java
Rational Rose 0 Platform Needed for architecture Class Diagrams,

Use case diagrams,

Sequence Diagrams,

Collaboration Diagrams,

State Diagrams, Activity Diagrams,

Java, C, C++ Java, C, C++
Star UML 1 The Open Source UML/MDA Platform Class Diagrams,

Use case diagrams,

Sequence Diagrams,

Collaboration Diagrams,

State Diagrams, Activity Diagrams,

Visual Basic, Java Script, Delphi, C#, Python Visual Basic, Java Script, Delphi, C#, Python



SDLC Models, Software Development Lifecycle Models

Software Development Life Cycle model is process used by industries to design, develop & make high quality software’s that satisfies the customers need. It’s kind of software development process.


Stages/Phases in the SDLC


  1. Planning & Requirement Analysis:

In this phase client gave its requirements. Market survey, sales and several process took place here and via all, system analyst make a documented format about final product.

  1. Defining & Designing:

In defining and designing a brief prototype is made and by this prototype one can make all suitable need & procedure that can implemented when project goes into building form.

It is done through SRS i.e, Software Requirement Analysis.


  1. Building or Coding:

In building phase or coding phase one can implement design patterns. Use high level language according to the product design and simultaneously test small code packages called classes or as a part of unit testing.

  1. Testing:

In testing phase one can test small units that is unit testing and composition of that small products that is integration testing at time of integrating software’s.

  1. Deployment:

Deployment is the process of the release of final product into usable format and via this firstly companies release them in limited quantity after that according to feedback of market, company release them into required quantity. After this company do maintenance work on the product they launch.

SDLC Models:

There are several software models which are followed in the Software Development Life Cycle.

  • Waterfall model
  • Iterative model
  • Spiral model
  • V-model
  • Big Bang model
  • RAD model
  • Agile model


  1. Waterfall model:


Waterfall model is first model that came in existence for process. It is also called as linear sequential life cycle model.

The sequential phases in Waterfall model are

  1. Requirement Gathering and analysis:

All requirements related to the product are discussed and made here. After this discussion a well-documented format is made that is called as SRS Software Requirement Specification. This is particularly done by System Analyst.

  1. System Design:

In this phase a well formed prototype is made according to the requirement of the project and a theme line on which project will be done.



  1. Implementation:

In this phase implementation is done or we can say that coding is performed on the given project and prototype using particular high level language according to the need of the software.


  1. Integration and Testing:

In this phase test is done on small parts that is called as Unit Testing and After Unit Testing after composition Integration Testing is done. It is most time taken phase in entire duration of a life cycle of a model.

  1. Deployment of system:

It is phase of final release of product in the market. In this software or product is release in the market in limited additions and after the feedback from the market it is further release in accordance with the quantity.

  1. Maintenance:

It is process of after deployment and feedback on the basis of which a team works on that and provide good services to the end customers.


Advantages Of Waterfall Model:

  • Simple and easy to understand.
  • Clearly defined stages.
  • Process and results are well documented.
  • Phases are completed one at a time.
  • Works well for smaller projects that have complete requirement analysis.

Disadvantages Of Waterfall Model:

  • No working software is completed until full software product is made.
  • High risk and uncertainty is there.
  • Not a good model for complex software’s design.
  • Difficult to measure the progress under phases.


  • Project is short with clearly defined goals and complete analysis with requirements.
  • Technology is understandable & not dynamic.


  1. Iterative Model:

Iterative process starts with a simple implementation of a subset of the software requirements and iteratively enhances the evolving versions until the full system is implemented.



The key to a successful use of an iterative software development lifecycle is rigorous validation of requirements, and verification & testing of each version of the software against those requirements within each cycle of the model. As the software evolves through successive cycles, tests must be repeated and extended to verify each version of the software.


Advantages Of Incremental Model:

  • Working functionality can be seen earlier in life cycle.
  • Parallel design and work can be possible.
  • Progress can be seen.
  • Easier to manage risk.
  • Supports changing requirements.

Disadvantage Of Incremental Model:

  • More resources may require.
  • Highly skilled resources are required for development.
  • Management complexity is more.


Spiral Model:

This Spiral model is a combination of iterative development process model and sequential linear development model i.e. the waterfall model with a very high emphasis on risk analysis.

Spiral Model has four phases. A software project passes repeatedly through these steps so this model are called as spiral.


The following four phases are as follows:

  • Identification
  • Design
  • Construct or Build
  • Evaluation and Risk Analysis

Identification: Identification phase is starts with gathering the business requirements, all the units and necessary requirements are made in this phase.


Design: The design phase starts with conceptual design logical design of modules in sub sequent spirals.


Construct or Build: The Construct phase refers to production of the actual software product at every spiral.


Evaluation and Risk Analysis: Risk Analysis includes identifying, estimating and monitoring the technical feasibility and management risks, such as schedule slippage and cost overrun.


Advantages of Spiral Model:

  • Good for large and mission projects.
  • Allows extensive use of software’s.
  • Users can see product early.
  • Additional functionality can add later.

Disadvantages of Spiral Model:

  • Can be costly to use.
  • Doesn’t work well for smaller projects.
  • Risk analysis requires highly expertise.


Agile Model:

Agile SDLC model is a combination of iterative and incremental process models. By deliver of product as it is that customer requires in their satisfaction.

It is used for time critical applications. Extreme programming is one of the most well-known agile development life cycle models.


Advantages of Agile Model:

  • By rapid method doing continuous delivery of useful softwares.
  • Frequent services of product delivery.
  • Further late changes are welcome.
  • Regular adaptation projects can be done via this model.
  • F2F face to face communication is very well for actual requirements and right product so it’s advantage of this model.

Disadvantages of Agile Model:

  • Complex dependencies are difficult to handle.
  • There is more risk in maintainability and sustainability.
  • If team members are changed then there is complexity in dividing task or difficulty in understanding them the code.
  • It all depends on the customer interaction so if client or customer is not clear with the software then we have problems in deciding what exactly the product should be.
  • There is a great importance of senior members in the projects so new comer developer or programmer has no place in this model of the software process.