Sie sind auf Seite 1von 20

Software Development Life Cycle

The software development life cycle (SDLC) is a framework defining tasks performed at
each step in the software development process. SDLC is a structure followed by a development
team within the software organization. It consists of a detailed plan describing how to develop,
maintain and replace specific software. The life cycle defines a methodology for improving the
quality of software and the overall development process. 
This term is also known as the software development process.

It mainly include 6 major phases such as

 Requirement Gathering and Analysis


 System Analysis
 System Design
 Coding
 Testing
 Implementation
Requirement Gathering and Analysis: 

Requirement gathering and analysis is the first stage of any SDLC model. This phase is
basically the brainstorming phase and often consists of sub-stages like Feasibility Analysis to
check how much of the idea can be put into action. If any particular software needs to be
modified, the underlying problem(s) of that software is sorted out along with finding ways to
solve it. If a brand new software is going to be developed, then every minute requirement
regarding that software is looked in to. This implies that this stage involves maximum research
and inputs from both the company that is developing the software and the client.

System Analysis: 

This is the second phase of SDLC where the entire system is defined in detail. In fact, it
this stage wherein a detailed blueprint of various processes of the software is developed. If
needed the system is divided into smaller parts to make it easier more manageable for the
developers, designers, testers, project managers and other professionals who are going to work
on the software in the latter stages.

System Design: 

In this phase, the physical system is designed with the help of the logical design prepared
by system analysts. The analysts and designers work together and use certain tools and software
to create the overall system design, including the probable output.

Coding: 

As the name implies, in this stage the software is coded with precision. A team of
programmers are assigned by the company to work on the software. More often than not, the
work is sub-divided under a sub-phase called Task Allocation, where each developer is assigned
a part of the work depending on his or her skill set(s). This helps complete the coding efficiently.
Testing: 

When the software is ready, it is sent to the testing department where Quality Analysts
test it thoroughly for different errors by forming various test cases. They either test the software
manually or using automated testing tools and ensure that each and every component of the
software works fine. Once the QA makes sure that the software is error-free, it goes to the next
stage, which is Implementation.

Implementation: 

This is the final stage of software development life cycle. In this stage, if the software is
run on various systems by users. If it runs smoothly on these systems without any flaw, then it is
considered ready to be launched. Maintenance phase is the continuation process.
Tools Used For Software Development Process
SRS Preparation

1. Tool used:Rational Requisite Pro:

IBM® Rational® RequisitePro® is a requirements and use case management tool for project
teams. Teams can author and share their requirements using familiar document-based methods,
while using database capabilities such as traceability and impact analysis. This can improve
communication and requirements management, increase quality and speed time to market.

Rational RequisitePro is an easy-to-use tool that helps you:

Avoid rework and duplication

 Supports Microsoft Word for requirement authoring and communication.


 Complements document-based entry with a commercial database to add organization,
tracking and management capabilities.

Manage complexity with detailed traceability

 Establishes and tracks relationships between requirements to verify that high-level


requirements are represented in the detailed software requirement specs.
 Enables you to query these relationships for coverage analysis. It helps ensure
completeness and enables you to avoid wasting time building part of the system that is
not needed.

Improve collaboration

 Helps ensure distributed teams have read and write access to requirements from wherever
they are located.
 Allows anyone with web access—working on any platform—to quickly view, author and
manage requirements without having Rational RequisitePro loaded on their machine.
 Enables project administration to be completed via the web.
Capture and analyze requirements

 Allows you to easily set up requirement, attribute and document types.


 Defines queries and filters to quickly find information of interest.

Increase productivity

 Creates an XML-based baseline of project requirements. You can use it to jumpstart new
projects or compare with other project baselines, exposing requirement changes and
omissions at multiple levels of detail.
 Supports parallel development in which more than one set of requirements must coexist.

Align business goals and objectives with project deliverables

 Makes requirements information uniformly accessible and modifiable through products


in the IBM software delivery platform.
 Synchronizes the entire team and provides for full traceability through the lifecycle by
integrating with these products.

2. Tool Used: IBM Rational Software Architect (RSA):

Rational Software Architect is a design and development tool that leverages model-driven
development with the UML for creating well-architected applications and services.

With Rational Software Architect we can:

 Unify all aspects of software design and development.


 Develop applications more productively than ever.
 Exploit the latest in modeling language technology.
 Review and control the structure of your Java applications.
 Leverage an open and extensible modeling platform.
 Simplify your design and development tool solution.
 Integrate with other facets of the lifecycle.
Advantages:

The benefits of using Rational Software Architect include:

 Build software architecture that supports change with a common platform that facilitates
easy roundtrip engineering and synchronization of models and code.
 Accelerate implementation and facilitate maintenance of a service-oriented
architecture (SOA) solution, such as a web service, with tools and process guidance.
 Use UML to ensure the numerous stakeholders within your software development
projects are continuously communicating, and use defined specifications to jumpstart
development.
 Gain insight into distributed projects and tighter control of shared information.

IBM RSA Versions:

 V7.0: Released December 2006. Based on Eclipse v3.2, UML v2.1 and IBM Rational
Application Developer v7.0
 V7.0.0.1: Released January 2007. Includes bug fixes.
 V7.0.0.2: Released January 2007. Includes support for UML to SOA transformations,
including Service Creation Description Language (SCDL), BPEL, WSDL and XSD.
 V7.0.0.3: Released July 2007. Includes support for asynchronous web services (JAX-
WS) and support for new Java 5.0 UML stereotypes.
 V7.5.0: Released September 2008. Based on Eclipse v3.4.
 V8.0: Released August 2010. Based on Eclipse v3.6.
 V8.5: Released July 6, 2012. [1]
 V9.0: Released June 14, 2013. Based on Eclipse v4.2.2. Includes support for OS X.

System Analysis: 

1. Tool Used: Event table


The event table is a table of data that is typically written to the logfile for
each scenario and also appears in the Analysis window. The event table contains timing
information about specific events that occur during the scenario. Only stimulus events with event
codes will appear in the event table. The resolution of the times given is 0.1 milliseconds.
The uncertainties provide the upper limit so that an uncertainty of 0.2 means the uncertainty is
between 0.1 and 0.2 milliseconds.

The event table has the following columns.

The trials in a scenario are numbered sequentially starting with 1. If a trial is


a feedback trial, it will be labeled by the number of the original trial which
created the feedback trial plus a letter. Thus, the first feedback trial after trial 3
Trial
would be labeled 3A. Events that occur between trials will be assigned the trial
number of the previous trial. If the scenario uses fMRI mode and contains only
one trial, this column will indicate the main pulse number.

Event Type This is the type of the event. For example, "Picture", "Sound", "Response".

For responses, this is the code provided by either


the button_codes or target_button_codes header parameters. For stimuli, this
Code
will be the user defined event code. Only stimuli that are given event codes will
appear in the Analysis window and the logfile.

(Optional) If you define the stimulus_properties header parameter, extra


[custom
columns containing the properties inside stimulus event codes will be inserted
properties]
after the "Code" columns.

This is the time of occurrence of the event relative to the start of the scenario.
Time See the section for each type of event for information on how to interpret this
information.

TTime This is the same as 'Time' above except measured relative to the start of
the trial the event is in.

Uncertainty
This is the temporal uncertainty for the event (see Uncertainties.)
(Time)

For picture stimuli, this is the duration of the picture. Presentation does not


Duration
monitor the durations of other stimuli.

Uncertainty This is the uncertainty in the time given for the duration of a picture
(Duration) stimulus (see Uncertainties.)

This is the requested time of presentation given in the scenario file. Note that
Req Time actual presentation times for picture stimuli are constrained by the monitor
refresh and therefore should differ from requested times.

For picture stimuli, this is the requested duration of presentation given in


Req Dur the scenario file. Note that picture stimuli durations are constrained by the
monitor refresh.

System Analysis: 

1. Tool Used: Rational Software Architect (RSA)

Rational Software Architect is a design and development tool that leverages model-
driven development with the UML for creating well-architected applications and services.

With Rational Software Architect we can:

 Unify all aspects of software design and development.


 Develop applications more productively than ever.
 Exploit the latest in modeling language technology.
 Review and control the structure of your Java applications.
 Leverage an open and extensible modeling platform.
 Simplify your design and development tool solution.
 Integrate with other facets of the lifecycle.

Advantages:

The benefits of using Rational Software Architect include:

 Build software architecture that supports change with a common platform that facilitates
easy roundtrip engineering and synchronization of models and code.
 Accelerate implementation and facilitate maintenance of a service-oriented
architecture (SOA) solution, such as a web service, with tools and process guidance.
 Use UML to ensure the numerous stakeholders within your software development
projects are continuously communicating, and use defined specifications to jumpstart
development.
 Gain insight into distributed projects and tighter control of shared information.

IBM RSA Versions:

 V7.0: Released December 2006. Based on Eclipse v3.2, UML v2.1 and IBM Rational
Application Developer v7.0
 V7.0.0.1: Released January 2007. Includes bug fixes.
 V7.0.0.2: Released January 2007. Includes support for UML to SOA transformations,
including Service Creation Description Language (SCDL), BPEL, WSDL and XSD.
 V7.0.0.3: Released July 2007. Includes support for asynchronous web services (JAX-
WS) and support for new Java 5.0 UML stereotypes.
 V7.5.0: Released September 2008. Based on Eclipse v3.4.
 V8.0: Released August 2010. Based on Eclipse v3.6.
 V8.5: Released July 6, 2012. [1]
 V9.0: Released June 14, 2013. Based on Eclipse v4.2.2. Includes support for OS X.
2. Tool Used: Visual Paradigm

Visual Paradigm for UML (UML-VP) is a design tool and UML CASE tool designed to aid
software development. VP-UML supports key modeling standards such as Unified Modeling
Language (UML), SoaML, SysML, ERD, BPMN 2.0, Archimate 2.0, etc.it supports software
development teams in requirements capturing, software planning, code engineering, class
modeling, data modeling etc.

VP-UML Professional Edition (VP-UML PE) is a full-featured use case tool. It supports
everything we need in identifying and organizing system requirements through use case analysis.
System analysts draws use case diagram in VP-UML PE to model system functions, write events
flow for use cases using the flow of events editor and manage use cases with the grid
function.Flexible and versatile reporting tools allows us to produce professional-look and
content-rich use case documentation and system specification. In addition to use case diagram,
VP-UML PE supports all kinds of UML diagrams and SysML diagrams to provide s with strong
visual modeling supports. Impact analysis helps to ensure the completeness of design by
preventing us from making accidental change on model.

Features include:
Use case flow of events

A named use case depicts the 'what' aspect of a use case by telling
us what the users need. The 'how' aspect of use case that explains
how a user goal can be accomplished can be further analyzed by
using flow of events, which is a technique for analyzing the
interaction between actor and system in accomplishing a use case.

Impact analysis

Impact analysis is the technique to find out the potential influences


that may happen when updating a design blueprint. For example,
when we want to update the use case model, you may also want to
update the sequence diagrams which model how to achieve the user goals. Impact
analysis helps avoid unexpected consequences resulted by updating your design
blueprint. Contrary to this, it lets you find out everything you need to update along when
a change is to be made. There are three ways of performing impact analysis in VP-UML
PE, chart, analysis diagram and matrix.

UML and SysML modeling

Model your software system with UML and SysML. Design your


software system and communicate between team members.

Reporting

Write your own report templates with customized layout and style.
Develop report within report composer in ad-hoc manner. Export
report to HTML, PDF or MS Word.

Requirement diagram

Specify and analyze system requirements by drawing requirement


diagram. You can document users' needs in detail plus define the
way to test the requirements. You can also relate requirements with
proper connectors.

Code and database engineering

Perform round-trip engineering with Java and C++. Perform one-


way code generation or reverse engineering with over 10
programming languages.Generate database, patch database or
produce full executable DDL from your ERD. Reverse engineer
ERD from legacy database.
Define key project vocabularies

Defining keywords used in project helps build a common


understanding of vocabulary used within a project and among the
team members and end users. Glossary in VP-UML PE is where
you can add and define terms and phrases.

Eclipse/NetBeans/IntelliJ IDEA/Visual Studio integration

VP-UML PE can run as a standalone UML tool orrun inside an


IDE. VP-UML PE supports running
inside Eclipse, NetBeans, IntelliJ and Visual Studio. Without
leaving your IDE, you can review your software design described
in UML, and perform code generation and code reversal within a single environment.

Entity relationship diagram (ERD)

Design database quickly and easily withprofessional-look ERD.

Design review and commenting

User feedback is the precious ingredient you


need to evolve towards a better end product. Therefore, a key for
producing a product that favors usability is to maintain an efficient
communication channel which allows end users to see your
designs, give comments and raise questions regularly.

Easy diagramming and modeling

Draw diagrams you have in your mind quickly and easily. Improve


model quality and modeling efficiency by reducing re-work.
Team collaboration

Work as a team, and enjoy concurrent and collaborative modeling


with Visual Paradigm Teamwork
Server, SVN, CVS, Perforce orClearCase. Users of the Corporate
Edition of Teamwork Server can enjoy additionally the capability
of sharing and discussing design on the Web.

Continue with Legacy

Migrate to VP-UML to enjoy easy modeling without re-developing


the model from scratch. VP-UML PE supports importing a large
number of other drawing and modeling tools.

3. Tool Used: Enterprise Architect

Sparx Systems Enterprise Architect is a visual modeling and design tool based on the  OMG
UML. The platform supports: the design and construction of software systems modeling business
processes and modeling industry based domains. It is used by businesses and organizations to not
only model the architecture of their systems, but to process the implementation of these models
across the full application development life-cycle.

Advantages:

 High Value, End-To-End Modeling

 Speed, Stability and Performance

 Business Simulation

 End-to-End Traceability

 Model, Manage and Trace Requirements

 Manage Complexity

 Powerful Document Generation


 Generation and Reverse Engineering of Source Code

 Visualize your Applications

 Advanced Model Driven Architecture

 Debugging, Compiling and Visualizing Executing Code

 Automation - Harness the Power

 Business Process Modeling

 Build upon UML 2.4.1

Forward And Reverse Engineering

Tools used:

 Rational software architect

 Visual Paradigm

 Enterprise Architect

Test Suite Generation: 

1. Tool Used: Rational Quality Manager (RQM):

IBM® Rational® Quality Manager is a collaborative hub for business-driven software and
systems quality across virtually any platform and type of testing. This software helps teams share
information seamlessly, use automation to accelerate project schedules and report on metrics for
informed release decisions.
Rational Quality Manager helps quality assurance teams:
 Collaborate—share project information and status updates seamlessly so team members
can synchronize teamwork throughout the lifecycle.
 Automate—reduce labor-intensive activities to accelerate project schedules.
 Govern—understand and report on project metrics to enable accurate, reliable and timely
release decisions.

Features:

 enables quality assurance teams to track aspects of the quality assurance effort. The


central artifact in the tool is a dynamic test plan that contains information pertaining to
the quality assurance effort, such as goals, schedules, milestones and exit criteria as well
as links to associated test cases, requirements and development work items. Rational
Quality Manager includes modules for requirements management, manual test authoring
and execution, test lab management, test execution, reporting and defect management.

 Quality Manager is a web 2.0 application which runs in a browser. Data is stored and
managed on the Rational Quality Manager Server.

 It is built upon the IBM Rational Jazz technology platform. The Jazz technology platform
is a common server foundation shared by several Rational tools which facilitates
information sharing between teams and applications. Through the Jazz technology
platform, Rational Quality Manager can share requirements information with Rational
Requirements Composer, and share work items and defects with Rational Team Concert.
The Jazz platform provides a universal Application programming interface for sharing
information with other 3rd party applications.

 IBM® Rational® Quality Manager is a collaborative, web-based tool that offers test
planning, test construction, and test artifact management functions throughout the
software development lifecycle. Rational Quality Manager is designed as a replacement
for IBM Rational Manual Tester, IBM Rational ClearQuest® Test Manager, and Rational
TestManager.

 Rational Quality Manager is based on the Jazz™ platform and inherits characteristics


from that platform. Rational Quality Manager supports user roles that include test
manager, test architect, test lead, tester, and lab manager. The application also supports
roles outside the test organization.
 Rational Quality Manager is a part of the Collaborative Lifecycle Management (CLM)
solution which provides integrations for application lifecycle management, with reduced
cost of ownership and administration, improved cross-product visibility and reporting,
and lifecycle integrations.

2. Tool Used: Microsoft Test Manager

Microsoft Test Manager helps to plan, manage, and execute both manual and exploratory
tests. We can also automate our manual tests once they are stabilized. While we are performing
manual and exploratory tests, we can log bugs. The bug will contain a trace of our recent actions,
a snapshot of the state of the system, and a copy of any notes we made while exploring the
system. We can record our actions in the test case, so that they can be played back later.
We can also use Microsoft Test Manager to set up and manage lab machines. We can
configure a virtual lab in which to install a distributed system, and link that lab to the test plan.
Whenever we need to repeat tests—for example when we want to publish a change to our system
—the lab can be reconfigured automatically.
Creating a Test Case with Microsoft Test Manager 2010
With Team Foundation Server 2010, a test plan is composed of test cases. At its core, a
test case is a series of steps performed against a piece of software, to validate the software is
working correctly. TFS 2010 represents test cases as work items. As such, a test case can be
created using either Team Explorer or Microsoft Test Manager. In keeping with the theme of my
last column ( Test Plans with Microsoft Test Manager 2010 ), in this column we will look at how
to create a test case using Microsoft Test Manager 2010.
Open Microsoft Test Manager 2010. Connect to the team project you want to work with,
and select the appropriate test plan. This will open MTM 2010 into the Plan tab, with the test
plan selected. To add a new test case to the test plan, click the New button on the tool bar. This
will open a blank test case work item form.
The top section of the form should seem familiar to users of the TFS work item tracking
system. You can set the title of the test case, and the iteration to which it applies. You can also
assign to test case to a specific user, set its priority information, and other detail information.
The real power of the test case though, comes in the bottom portion of the screen, on the
Steps tab. This is where you list out the manual steps the tester will use to test the application.
Start typing where it says "Click here to add a step." In the Action column, you add the action
that the tester should try and perform, such as "Open Internet Explorer." In the Expected Results
column, you list what should happen when the action is performed, such as "Internet Explorer
opens to its default home page." To continue adding new steps to the test case, hit Enter to go to
a new
Functional & regression Testing: 

1. Tool Used: Rational Functional Tester

IBM Rational Functional Tester is an automated functional testing and regression testing tool.
This software provides automated testing capabilities for functional, regression, GUI, and data-
driven testing. Rational Function Tester supports a range of applications, such as web-based,
.Net, Java, Siebel, SAP, terminal emulator-based applications, PowerBuilder, Ajax, Adobe Flex,
Dojo Toolkit, GEF, Adobe PDF documents, zSeries, iSeries, and pSeries.
 Storyboard testing: Simplifies test visualization and editing using natural language and
rendered screenshots.
 Automated testing: Enables testers to automate tests resilient to frequent application
user interface changes with ScriptAssure technology.
 Data-driven testing: Lets you perform the same series of test actions with a varying set
of test data.
 Test scripting: Combines a recorder of user actions with multiple customization options
and intelligent script maintenance capabilities.
 Integrations: Integrates with IBM Rational Team Concert and IBM Rational Quality
Manager to provide access to work items and logical or compound SCM test asset support.
IBM Rational Functional Tester is software test automation tool used by quality
assurance teams to perform automated regression testing. Testers create scripts by using a test
recorder which captures a user's actions against their application under test. The recording
mechanism creates a test script from the actions. The test script is produced as either a Java or
Visual Basic.net application, and with the release of version 8.1, is represented as a series of
screen shots that form a visual storyboard. Testers can edit the script using standard commands
and syntax of these languages, or by acting against the screen shots in the storyboard.. Test
scripts can then be executed by Rational Functional Tester to validate application functionality.
Typically, test scripts are run in a batch mode where several scripts are grouped together and run
unattended.

During the recording phase, the user may introduce verification points. Verification
points capture an expected system state, such as a specific value in a field, or a given property of
an object, such as enabled or disabled. During playback, any discrepancies between the baseline
captured during recording and the actual result achieved during playback are noted in the
Rational Functional Tester log. The tester can then review the log to determine if an actual
software bug was discovered.

Life Cycle Management [Project Management]: 

1. Tool Used: Microsoft Project 2010

Microsoft Project is a project management software program, developed and sold


by Microsoft, which is designed to assist a project manager in developing a plan,
assigning resources to tasks, tracking progress, managing the budget, and analyzing workloads.

Microsoft Project was the company's third Microsoft Windows-based application, and
within a couple of years of its introduction it became the dominant PC-based project
management software.While part of the Microsoft Office family, it has never been included in
any of the Office suites. It is available currently in two editions, Standard and Professional.
Microsoft Project's proprietary file format is .mpp.Microsoft Project and Microsoft Project
Server are the cornerstones of the Microsoft Office Enterprise Project Management (EPM)
product. 

Features:

 Interoperability
Microsoft Project's capabilities were extended with the introduction of Microsoft
Office Project Server and Microsoft Project Web Access. Project Server stores Project
data in a central SQL-based database, allowing multiple, independent projects to access a
shared resource pool. Web Access allows authorized users to access a Project Server
database across the Internet, and includes timesheets, graphical analysis of resource
workloads, and administrative tools.
 User controlled scheduling
User-controlled scheduling offers flexible choices for developing and managing
projects.[6]

 Timeline
The timeline view allows the user to build a basic Visio-style graphical overview
of the project schedule. The view can be copied and pasted into PowerPoint, Word, or
any other application.
 SharePoint 2010 list synchronization
SharePoint Foundation and Project Professional project task status updates may
be synchronized for team members.
 Inactive tasks
help experiment with project plans and perform what-if analysis
 The Team Planner view
The new Team Planner shows resources and work over time, and helps spot
problems and resolve issues.
Document Generation: 

 Rational Software Architect (RSA)


 Visual Paradigm
  

Das könnte Ihnen auch gefallen