sdlc

11
Course tittle : Intro software Engineering Assignment tittle : Analysis report Submitted To : Submitted by : Roll No :

Upload: bilal-aslam

Post on 07-Feb-2017

50 views

Category:

Software


0 download

TRANSCRIPT

Page 1: Sdlc

Course tittle :

Intro software Engineering

Assignment tittle :

Analysis report

Submitted To :

Submitted by :

Roll No :

Page 2: Sdlc

Software Development Life Cycle  

SDLC, Software Development Life Cycle is a process used by software industry to design, develop and test high quality software.

(i) Analysis. srs..

A software requirements specification (SRS) is a description of a software system to be developed. It lays out functional and non-functional requirements, and may include a set of use cases that describe user interactions that the software must provide.Software requirements specification establishes the basis for an agreement between customers and contractors or suppliers (in market-driven projects, these roles may be played by the marketing and development divisions) on what the software product is to do as well as what it is not expected to do.

Business analyst..

Have you ever wondered how a business analyst approaches a software project? Would you be interested in the general phases of work a business analyst completes and what activities are included in each phase.Well, you’ll find plenty of answers out there about the one “right” way to do business analysis, but that’s never been the message here at Bridging the Gap. Here we know and believe that there are many right ways to do business analysis and what’s right for one project, one stakeholder group, and one organization may be completely wrong for another.When you think about it, that makes sense, right?Yet this doesn’t give you

Page 3: Sdlc

much to go on if you are a new business analyst on your first project or an aspiring business analyst beginning to look at what you’ve done using the filter of business analysis.

Here they are the three phases:

Initiate the project,

Elaborate the details, and

Support the implementation.In what follows, we’ll look at each phase in more detail, look at examples of what techniques and specifications you’d create in each phase, and define what it means to be done with each phase.

(ii) Design. How to draw Use Case Diagram?

Use case diagrams are considered for high level requirement analysis of a system. So when the requirements of a system are analyzed the functionalities are captured in use cases.So we can say that use cases are nothing but the system functionalities written in an organized manner. Now the second things which are relevant to the use cases are the actors. Actors can be defined as something that interacts with the system.

Functionalities to be represented as an use case

Actors

Relationships among the use cases and actors.Use case diagrams are drawn to capture the functional requirements of a system. So after identifying the above items we have to follow the following guidelines to draw an efficient use case diagram.

The name of a use case is very important. So the name should be chosen in such a way so that it can identify the functionalities performed.

Give a suitable name for actors.

Show relationships and dependencies clearly in the diagram.

Page 4: Sdlc

Do not try to include all types of relationships. Because the main purpose of the diagram is to identify requirements.

Use note when ever required to clarify some important points.

The following is a sample use case diagram representing the order management system. So if we look into the diagram then we will find three use cases (Order, Special Order and Normal Order) and one actor which is customer.

The Special Order and Normal Order use cases are extended from Order use case. So they have extends relationship. Another important point is to identify the system boundary which is shown in the picture. The actor Customer lies outside the system as it is an external user of the system.

Where to Use Case Diagrams? As we have already discussed there are five diagrams in UML to model dynamic view of a system. Now each and every model has some specific purpose to use. Actually these specific purposes are different angles of a running system.So to understand the dynamics of a system we need to use different types of diagrams. Use case diagram is one of them and its specific purpose is to gather system requirements and actors.Use case diagrams specify the events of a system and their flows. But use case diagram never describes how they are implemented.

Page 5: Sdlc

Use case diagram can be imagined as a black box where only the input, output and the function of the black box is known.

These diagrams are used at a very high level of design. Then this high level design is refined again and again to get a complete and practical picture of the system .

DFD.A picture is worth a thousand words. A Data Flow Diagram (DFD) is traditional visual

representation of the information flows within a system. A neat and clear DFD can depict a good

amount of the system requirements graphically. It can be manual, automated, or combination of

both.It shows how information enters and leaves the system, what changes the information and

where information is stored. The purpose of a DFD is to show the scope and boundaries of a

system as a whole. It may be used as a communications tool between a systems analyst and

any person who plays a part in the system that acts as the starting point for redesigning a

system.

Sequence diagram.

Class Roles or ParticipantsClass roles describe the way an object will behave in context. Use the UML object symbol to illustrate class roles, but don't list object attributes.

Activation or Execution OccurrenceActivation boxes represent the time an object needs to complete a task. When an object is busy executing a process or waiting for a reply message, use a thin gray rectangle placed vertically on its lifeline.

Page 6: Sdlc

MessagesMessages are arrows that represent communication between objects. Use half-arrowed lines to represent asynchronous messages. Asynchronous messages are sent from an object that will not wait for a response from the receiver before continuing its tasks. For message types, see below.

LifelinesLifelines are vertical dashed lines that indicate the object's presence over time.

Page 7: Sdlc

Destroying ObjectsObjects can be terminated early using an arrow labeled "<< destroy >>" that points to an X. This object is removed from memory. When that object's lifeline ends, you can place an X at the end of its lifeline to denote a destruction occurrence.

LoopsA repetition or loop within a sequence diagram is depicted as a rectangle. Place the condition for exiting the loop at the bottom left corner in square brackets .

Class diagram.

Sponsored News

Fight Infrastructure Growth and Complexity With Converged Systems–Dell Managing Opex by Cutting Power, Cooling and Physical Space Costs Through ...–Dell

See More

Vendor Resources

Page 8: Sdlc

Project Management Network Diagram: A Tool for Understanding the PM Life Cycle–Global Knowledge

Software Security Analysis: Control Flow Security Analysis with McCabe IQ–McCabe Software, Inc.

(iii) Coding.

What is java.?

Java is power full programing language. which use to design a big

applications and software. Java language is more simple and easy. Whit the use of this language we

design easily any application.

(iv) Testing.

What is junit ?

JUnit is a   Regression Testing Framework   used by developers to implement unit testing in Java, and accelerate programming speed and increase the quality of code. JUnit Framework can be easily integrated with either of the following −

Eclipse Ant Maven

Features of JUnit Test Framework JUnit test framework provides the following important features −

Fixtures Test suites Test runners JUnit classes

Page 9: Sdlc

FixturesFixtures   is a fixed state of a set of objects used as a baseline for running tests. The purpose of a test fixture is to ensure that there is a well-known and fixed environment in which tests are run so that results are repeatable. It includes −

setUp() method, which runs before every test invocation.

tearDown() method, which runs after every test metho d.

What Selenium?

Selenium an open source web testing toll which is widely used in information technology industry for test automation.   It was originally developed by Jason

Huggins as an internal testing tool for Thoughts Works.

Many Companies , let's say most are currently developing web based solutions to be run in an internet browser. Selenium support all common browsers for automation. Also it supports to write/run test cases without learning scripting languages as well as to all common languages such as Java, C#, PHP, Python, Ruby and Groovy scripts. Hence QA engineer able to use own test cases and run through selenium.

Selenium is not just single tool but is set of tool which are used in various scenarios. Lets understand about them.

Why Selenium?

Selenium is probably the best option for automated testing of Websites today. It is becoming increasingly popular and it is the first choice of automation testers as well as organizations for automating the testing of Web-based applications for both the GUI as well as the functionality. Selenium can also be used as a unit testing tool for JavaScript.

It is free and open source have a large user base and helping communities Have cross Browser compatibility (Firefox, chrome, Internet Explorer,

Safari etc.) Have great platform compatibility (Windows, Mac OS, Linux etc.)

Page 10: Sdlc

Supports multiple programming languages (Java, C#, Ruby, Python, and Pearl etc.)

has fresh and regular repository developments supports distributed testing.