SlideShare ist ein Scribd-Unternehmen logo
1 von 9
Downloaden Sie, um offline zu lesen
272                       IJCSNS International Journal of Computer Science and Network Security, VOL.7 No.4, April 2007



                   A Process Model for Software Architecture
          A. Rama Mohan Reddy                       Dr. P Govindarajulu                     Dr. M M Naidu
          Associate Professor                       Professor                               Professor


                                       Department of Computer Science and Engineering
                             Sri Venkateswara University College of Engineering / Arts and Science
                                                Sri Venkateswara University
                                        TIRUPATI – 517 502. Andhra Pradesh, INDIA


ABSTRACT
                                                                           2.1 The software life cycle model
Software development life cycle (SDLC) is a process model adopted
and followed during the development of software.. Software                 A descriptive model describes the history of how a
Engineering encompasses software engineering process models,               particular software system was developed [Curtis,
project planning, management, and Software Development Life Cycle          Krasner, Iscoe, 1988]. Prescriptive models are used as
activities. In this paper, we are proposing a software process model for   guidelines or frameworks to organize and structure how
architecture-based software development from the conventional
                                                                           software development activities should be performed,
models by taking spiral process model. This process model is coined as
Software Architecture Development Life Cycle (SADLC).                      and in what order.
Key words:
                                                                               Problem
Software Architecture, Software Development Life Cycle,                       definition
Components, connectors, configurations, Spiral model.
                                                                                       Analysis

1. Introduction
                                                                                              Design
Software systems come and go, through a series of phases or
activities that starts from the Inception, Initial Development,
Productive Operation, Upkeep, and Retirement. The process
                                                                                                   Construction
provides interaction between stakeholders and serves as the
medium for communication, with each new round of the
iteration eliciting more useful knowledge from the stakeholders.
                                                                                                            Testing
Building computer software is an iterative learning process, and
the outcome, called Software A software process defines the
approach that is taken as software is engineered [PAU93]. This
paper examines a number of methods for software modelling                                                          Maintenance
how software systems are developed. It begins with related
works and definitions of traditional software life cycle process
models. These models that are in use that form as the basis for
organizing a process model for software architecture

2. Related work                                                             Figure 1. Conventional Software development life cycle (SDLC)


Many models explicitly used for the earliest projects for
developing large software systems in the 1950’s and 1960’s                 Prescriptive models are also used to package the
[Hosier 1961, Royce 1970]. Since the 1960’s many descriptions              development tasks and techniques for using a given set
of the classic software development life cycle have appeared               of software engineering tools or environment during a
[Hosier 1961], [Royce 1970], [Boehm 1976], [Distaso 1980],                 development project.
[Scacchi 1984], and [Somerville 1999]. Royce [1970] began the
formulation of the software life cycle using the familiar                  Descriptive life cycle models, characterize how
waterfall model, shown in figure 1.                                        particular software systems are actually developed in



  Manuscript received April 5, 2007
  Manuscript revised April 25, 2007
IJCSNS International Journal of Computer Science and Network Security, VOL.7 No.4, April 2007                                          273


specific settings. These two characterizations suggest that there
are varieties of purposes for articulating software life cycle             Clearly, this sequence of actions could entail multiple
models. These characterizations serve as guidelines to organize            iterations and non-procedural primitive action
artifacts to be delivered the customer, tool and methods, and              invocations in the course of incrementally progressing
resource allocation and consumption [Boehm 1981].                          toward an object-oriented software design. The
                                                                           progressive steps of software evolution are often
         To solve actual problems in an industry setting, a                described as phases, such as requirements
software engineer or a team of engineers must incorporate a                specification, preliminary design, and implementation.
development strategy that encompasses the process, Methods,
and tools layers and the generic phases [Roger R.S Pressman,               2. 2 The linear sequential model
2003]. This strategy is often referred to as a process model or
software engineering paradigm.                                                       The linear sequential model, sometimes
                                                                           called the Classic life or the waterfall model, proposed
                                                                           by winsten Royce [Roy 70]. The linear sequential
   Application                                                             model suggests a systematic, sequential approach to
   Domain of Objects                                                       software development that begins at the system level
                                                                           and progresses through analysis, design, coding,
                                                                           testing, and support as shown in figure 3.
      Object-Oriented                                                      .
      Analysis

                                                                                Information
          Object-Oriented Design                                                engineering

                                                                                           Analysis
            Object-Oriented
            Programming                                                                            Design


                 Testing Object-Oriented                                                              Construction
                 Programs

                                                                                                                   Testing
  Figure 2 Software Development Life Cycles for Object-Oriented Software
                             Development

All software development methods can be characterized as a                     Figure 3. Software Development Life Cycle for Conventional
problem-solving loop in which four distinct stages are                            software development (The Linear Sequential Model).
encountered. The current state of affairs, problem definition
identifies the specific problem to be solved, technical
development solves the problem through the application of
some technology, and solution integration delivers the results,            2.3 The Prototyping Model
documents, programs, data, new business function, new product,
to those who requested the solution in the first place. Software                     A customer defines a set of general objectives
process models often represent a networked sequence of                     for software but does not identify detailed input,
activities, objects, transformations, and events that embody               processing, or output requirements. In these, and many
strategies for accomplishing software evolution. Software
process networks can be viewed as representing multiple                    other situations, a prototyping paradigm may offer the
interconnected task chains [Kling 1982, Garg 1989]. Task                   best approach
chains can be employed to characterize either prescriptive or
descriptive action sequences. Prescriptive task chains are                 2. 4 The RAD Model
idealized plans of what actions should be accomplished, and in
what order. For example, as shown in figure 2, a task chain for                    Rapid application development (RAD) is an
the activity of object-oriented software designs.                          incremental software development process model that
                                                                           emphasizes an extremely short development life cycle.
274                     IJCSNS International Journal of Computer Science and Network Security, VOL.7 No.4, April 2007


It is a component-based construction, but high speed linear           model, System development therefore spirals out only
sequential.                                                           so far as needed according to the risk that must be
                                                                      managed. Finally, efforts are now in progress to
2. 5 Evolutionary Software Process Model                              integrate computer-based support for stakeholder
                                                                      negotiations and capture of trade-off rationales into an
         Software evolves over a period of time [GIL 88].             operational form of the WinWin Spiral Model [Boehm
Evolutionary models are iterative. Iterative way of developing        et al, 1998]. We are considering the parts of this model
software is one of the modern software development processes.
                                                                      to propose Software Architecture Development Life
Evolutionary models enable software engineers to develop
                                                                      Cycle. (SADLC).
increasingly more complete versions of the software.

2.6 Incremental Models
                                                                                            Planning
          It combines elements of the linear sequential model
applied respectively with the iterative philosophy of prototyping.                                                 Risk
First increment is often a core product. It is iterative in nature.     Customer                                   analysis
                                                                        communication
2.7 The Spiral Model
          The spiral model, proposed by Boehm [BOE 88], is an
evolutionary software process model that couples the iterative a
                                                                        Customer
nature of prototyping with controlled and systematic aspects of         Evaluation              Engineering and
the linear sequential model as shown in figure 4. A spiral model
                                                                                                construction
is divided into a number of framework activities, also called
tasks or regions. Customer communication is for effective
communication between developer and customer. Planning is to
                                                                                     Figure 4 The spiral process model
define resources, timelines. Risk analysis is for assessing both
technical and management risks. Engineering, Construction and
release are to build one or more representations of the               2.8 The WinWin Spiral Model
applications. Customer Evaluation is for obtaining customer                    The Customer wins by getting the system or
feedback on evaluation of the software representations created        product that satisfy the majority of the customer’s
during the engineering stage and implemented during the               needs and the developer wins by working to realistic
installation stage.                                                   and achievable budgets and deadlines. Boehm’s
                                                                      WINWIN spiral model [BOE 98] defines a set of
The spiral model of software development and evolution                negotiation activities at the beginning of each pass
represents a risk-driven approach to software process analysis
                                                                      around the spiral.
and structuring (Boehm 1987, Boehm et al, 1998). This
approach, developed by Barry Boehm, incorporates elements of          2.9 The Concurrent Development Model
specification-driven, prototype-driven process methods,
together with the classic software life cycle. It does so by          The concurrent development model is also called
representing iterative development cycles as an expanding spiral,     concurrent engineering, Davis and Sitaram [DAV 94].
with inner cycles denoting early system analysis and                  The concurrent process model defines a series of
prototyping, and outer cycles denoting the classic software life      events that will trigger transitions from state to state
cycle. The radial dimension denotes cumulative development            for each of the software engineering activities. A
costs, and the angular dimension denotes progress made in             system and component activities occur simultaneously
accomplishing each development spiral as shown in Figure 4.           and can be modelled using the state-oriented approach
Risk analysis, which seeks to identify situations that might          described previously. Each activity on the network
cause a development effort to fail or go over budget/schedule,        exists simultaneously with other activities.
occurs during each spiral cycle.
                                                                      2.10 Component-Based Development
In each cycle, it represents roughly the same amount of angular       Object-Oriented technologies provide the
displacement, while the displaced sweep volume denotes                technical framework for a component-based
increasing levels of effort required for risk analysis. In this       process model for Software Engineering.
IJCSNS International Journal of Computer Science and Network Security, VOL.7 No.4, April 2007                                              275


3. SOFTWARE ARCHITECTURE                                               AND      incremental development, the unified process defines
   ARCHITECTURAL ISSUES                                                         the function of the system by applying a scenario-
                                                                                based approach. It then couples function with an
Object-Oriented Technologies provide the technical framework                    architectural framework that identifies the form the
for a component-based process model for software engineering.                   software will take. Figure 6 shows the overview of the
The Object-Oriented paradigm emphasizes the creation of                         transition from the Lines-Of-Code to architectural
components that encapsulate both data and the algorithms used                   elements.
to manipulate the data. The software architecture process model
incorporates many of the characteristic of the spiral model and
Object-Oriented process model. It is evolutionary in nature,                        Def.        Analysis         Design          Code
demanding an iterative approach to the creation of software.
The engineering activity begins with the identification of
candidate components from the business logic. Software                                                 Algorithms                Lines
architecture shift focus of developers from the line of the code                                           And                    Of
to coarse-grained architectural elements and their overall                          SDLC              Data structures            Code
interconnection structure as shown in figure 5.


   Level 4: Components, Connectors and                                                           Architectural Issues
             Configurations
   Level 3: Sub-Program, Function, Module,
                                                                                                    *Components
                Components.
                                                                                                    *Connectors
                                                                                                    *Configurations

   Level 2: Lines-Of- Code
                                                                                 Figure 6 Overview of Transitions from algorithms, Ds & LOC to
   Level 1: Algorithms and Data                                                                     Architectural Elements


                                                                                4. MODERN SOFTWARE
 Figure 5. Architecture is shown as it is above the algorithms and Lines- of-      EVELOPMENT
                                   Code

                                                                                4.1 Transition design methods to emphasize
           Architecture description languages (ADLs) have been
proposed as Modeling notations to support architecture-based
                                                                                component-based development
development. We have considered UML for Modeling. The                           Moving from a line-of-code mentality to a component-
components and connectors identified in the analysis and design                 based mentality is necessary to reduce the amount of
are used for architecture analysis and architecture design. The                 human-generated     source     code    and   custom
first iteration of the application to compose and to build new                  development.
components to meet the unique needs of the application. The
Process flow then returns to the spiral and will ultimately re-
enter the architectural issues loop during subsequent iteration                 Software architecture is the central design problem of
through the engineering activity. The software architecture-                    a complex software system as shown in figure 7.
based development model leads to software reuse, and                            Software architecture has several additional
reusability provides software engineers with a number of                        dimensions of complexity. There are many heuristics
measurable benefits.                                                            and fuzzy guidelines, but the fundamental measures of
                                                                                goodness are highly situation-dependent.. The
The unified software development process is representative of a                 requirements model addresses the behaviour of the
number of architecture-based development models that have                       system as seen by its end users, analysts, and testers.
been proposed in the industry. Using the Unified Modeling                       This view is modeled statically using use case and
Language (UML), the unified process defines the components                      class diagrams and dynamically using sequence,
that will be used to build the system and the interfaces that will              collaboration, state chart, and activity diagrams. The
connect the components. Using a combination of iterative and                    design model addresses the architecture of the system
276                     IJCSNS International Journal of Computer Science and Network Security, VOL.7 No.4, April 2007


and the design of the components within the architecture,                     Architecture
including the functional structure, concurrency structure,
implementation structure, and execution structure of the                      5. A TECHNICAL PERSPECTIVE OF
solution space, as seen by its developers. Static descriptions are               THE ARCHITECTURE:
provided with structural diagrams (like, class, object,
component, deployment diagrams). Dynamic descriptions are                     Although software architecture has been discussed at
provided with any of the UML, Behavioural diagrams                            length over the past decade, convergence on
(collaboration, sequence, state chart, activity diagrams).                    definitions, terminology, and principles has been
                                                                              lacking. Software architecture encompasses the
Figure 8, shows the procedure for architecture analysis and                   structure the software systems, their behaviour and the
design. The input is from the business architecture or from                   patterns that guide these elements, their collaborations
                                                                              and their composition. An Architecture framework is
software development life cycle. We propose here SADLC; it
                                                                              defined in terms of views that are abstractions of the
has the every thing about Software Architecture Analysis,
                                                                              UML models in the design set. Most real-world
Architecture design, Evaluation of design. It mainly
                                                                              systems require four views: design, process,
concentrates on Architectural Issues
                                                                              component, and deployment.                             .
A detailed view of transforming or generating Architecture
elements from conventional SDLC is shown in figure 9. The
transitions are shown gradually from SDLC to Software


             Application              Analysis                       Design                    Construction                Testing
             Domain
                                                         Algorithms and Data               Lines of Code
                                                             Structures



                                    Architecture and Architectural Issues


                                   Components, Connectors, Configuration


           Software               Architecture             Architecture              Architecture                Applications
           Architecture           Description              Design                    Evaluation for
           Characteristics        Languages                Evaluation                Design
                                  (ADLs)                   Methods                   alternatives

            Architecture Analysis               Architecture
            Methods                              Designs                    Architecture                   Architecture
                                                                              Views                          Styles




                 Figure 7 Software Development Life Cycle for Architecture-Based Software Development and its related issues
IJCSNS International Journal of Computer Science and Network Security, VOL.7 No.4, April 2007                                   277




             Business Architectures                                              SDLC UML diagrams of Analysis
                                                                                and Design
                    Analysis of Architectural Requirements

                                                             Design of Architectures

                                                              Evaluation of Design Alternatives

                                                                           Implementation of the architecture



                                  Figure 8 Software Architecture Development Life Cycles (SADLC)

The purposes of these views are as follows and shown in                      comprise a mixture of custom and commercial
figure 10. Design view, Process, Component view and                          components would also require a separate
Deployment view. The design view is probably necessary in                    component view. The figure 10 summarizes the
every system: the other three views can be added to deal with                artifacts of the design set, including the architecture
complexity of the system at hand. For example, any                           views and architecture descriptions are defined as
distributed system would need a process view ad a                            collections         of         UML           diagrams.
deployment view Most large systems, as well as systems that

         Business                 Analysis                Design               Construction              Testing     Support
         Logic

                                        Algorithms and Data structures                  Lines-Of-Code
         SDLC

                                Architectural Elements or Building blocks
                                 Components, Connectors, Configuration

         Architectural Requirements, Identification of
         Components, Connectors, and Configuration

          Types of Components, Connectors and Configurations

          Modeling Architectural Elements, Component, Connector,
          Models using UML

                        Analysis of Components and connectors using UML

                       Designing Architectural Elements using UML

            User Interface Development *SADLC an additional phase (UID) comes in to existence

            Configuration for Integrating Components, Structures, and Connectors for A Selected Style


                        Figure 9 Software Development Life Cycles for Architecture-Based Software Development
278                     IJCSNS International Journal of Computer Science and Network Security, VOL.7 No.4, April 2007



       Requirements                        Design              Implementation                       Deployment


                               The design set includes all UML design
                               models describing the solution space


                               Design View                                    Implementation View
                                                    Use Case View
                               Process View                                     Deployment View




                              Figure 10 Generation of software architectures from the design of SDLC.



                                                                        are necessary for architecture analysis, architecture
6. The proposed work                                                    design, architecture evaluation for particular quality
                                                                        attribute, architectural analysis and design methods,
                                                                        architectural styles, views, and for description of
The process model adapted for object-oriented systems is a              architectures (ADLs) that are shown in figures (7), (8),
component assembly model [RSP 2003]. This model in turn                 (9), and (10). . In this regard, similar to the object-
uses the spiral model. In spiral model one of the regions is            oriented assembly process model, in the SADLC, the
engineering and construction, from which the component                  control moves from spiral model to the architectural
assembly model takes a separate path and enters Object-                 issues area with design (SDLC) information and
Oriented software development area, where it searches for               resolve all architectural issues.
objects. If objects are found, they may be considered.
Otherwise, using the concepts and principles of Object                   We are trying to understand and show the
Oriented Analysis and Object Oriented Design, it constructs             architectural elements are directly taken from business
the required Objects and comes back and joins the                       architectures and design of conventional Software
engineering and construction region of spiral model. Next it            Development Life Cycle (SDLC). The proofs and
goes for another spiral. This is way, it iterates till to achieve       validity are being proposed in our extensions work.
the required system.

In the proposed work, the figure 11 shows the complete over
view of the Software Architecture Development Life Cycle
(SADLC). In SADLC we named some parts as spiral model
area and architectural issues area. We have considered the
conventional spiral model with out any deviation. The
architectural issues, is the area, which encloses the principles
and concepts of software architectures and every thing that
IJCSNS International Journal of Computer Science and Network Security, VOL.7 No.4, April 2007                                279




                                                                              Identify candidate Architectural building
                           Planning              Risk Analysis                       Blocks from business Logic

                                                                                                            Architecture
                                                                                   Rebuild
                                                                                                             Analysis
          Customer                                                                  The
          Communication                                                         Configuration
                                                                                                             Architecture
                                                                                                               Design

                                                                                   Transform Analysis & Design
              Customer                     Engineering and                      Architectural artifacts into Code level
              Evaluation                    Construction




     Spiral Model                                                                                  Architectural Issues


                        Figure 11 The proposed process models for software architecture development process model.


Conclusions                                                             [Boehm 1987] Boehm, B., A Spiral Model of Software
                                                                                  Development and Enhancement, Computer,
In software engineering, programming methodologies and                            20(9), 61- 72, 1987.
software process models play important role. These two                  [Boehm et al, 1998] Boehm, B., A. Egyed, J. Kwan, D.
are interrelated and overlapped concepts and principles.                          Port, A. Shah, and R. Madachy, Using the
Depending upon type, complexity and for particular non-                           WinWin Spiral Model: A Case Study, Computer,
functional and functional requirements various models are                         31(7), 33-44, 1998.
proposed and being adopted. Software Architecture is a                  [Curtis, Krasner, Iscoe, 1988] Curtis, B., H. Krasner, and
branch of Software Engineering; it also requires a                                N. Iscoe, A Field Study of the Software Design
systematic and formal approach for implementing the                               Process for Large Systems, Communications
concepts, principles while developing software                                    ACM, 31, 11, 1268-1287, November, 1988
architectures. In this context we are proposing a process               [DAV 94] Davis, A. and P. Sitaram, “A Concurrent
model called Software Architecture Development                                    Process Model for Software Development,”
Lifecycle (SADLC).                                                                Software Engineering Notes, ACM Press, vol. 19,
                                                                                  n0. 2, April 1994, pp. 38-51
                                                                        [Distaso 1980] Distaso, J., Software Management--A
References                                                                        Survey of Practice in 1980, Proceedings IEEE,
                                                                                  68, 9, 1103-1119, 1980
[BOE 88] Boehm, B., “A Spiral Model for Software                        [GIL 88] Gilb, T., Principles of Software Engineering
        Development and Enhancement,” Computer, Vol.                              Management, Addison-Wesley, 1988.
        21, no. 5, May 1988, pp. 61-72.                                 [Hosier 1961] Hosier, W. A., Pitfalls and Safeguards in
[BOE 98] Boehm, B., “Using the WINWIN Spiral Model:                               Real-Time Digital Systems with Emphasis on
        A Case Study,” computer, vol. 31, no. 7, July                             Programming, IRE Trans. Engineering
        1998, pp, 33-44.                                                          Management, EM-8, June, 1961
[Boehm 1976] Boehm, B., Software Engineering, IEEE                      [Kling 1982, Garg 1989] Kling, R., and W. Scacchi, The
        Trans. Computer, C-25,12,1226-1241, 1976.                                 Web of Computing: Computer Technology as
[Boehm 1981] Boehm, B. W., Software Engineering                                   Social Organization, Advances in Computers, 21,
        Economics, Prentice-Hall, Englewood Cliffs, N.                            1-90, Academic Press, New York, 1982.
        J., 1981



 Manuscript received April 5, 2007
 Manuscript revised April 25, 2007
280                    IJCSNS International Journal of Computer Science and Network Security, VOL.7 No.4, April 2007


[PAU93] Paulk, M et al., “Capability Maturity Model for
        Software,” Software Engineering Institute,
        Carnegie Mellon University, Pittsburgh, PA,
        1993.
[ROY70] Royce, W.W., “Managing the Development of
        Large Software Systems: Concepts and
        Techniques, “Proc. WESCON, August 1970.
[RSP 2003] Roger R.S Pressman, Software Engineering
        6th edition, 200

                    A Rama Mohan Reddy working as
                    Professor of Computer Science and
                    Engineering,                     Sri
                    Venkateswara University., INDIA.
                    He Completed his M.Tech Computer
                    Science from NIT, Warangal.
                    Currently he is pursuing Ph.D in
                    software Architecture.

Weitere ähnliche Inhalte

Was ist angesagt?

Sofware Engineering Important Past Paper 2019
Sofware Engineering Important Past Paper 2019Sofware Engineering Important Past Paper 2019
Sofware Engineering Important Past Paper 2019MuhammadTalha436
 
Software engineering note
Software engineering noteSoftware engineering note
Software engineering noteNeelamani Samal
 
4 mohammad naderuzzaman_finalpaper--35-40
4 mohammad naderuzzaman_finalpaper--35-404 mohammad naderuzzaman_finalpaper--35-40
4 mohammad naderuzzaman_finalpaper--35-40Alexander Decker
 
Software engineering Questions and Answers
Software engineering Questions and AnswersSoftware engineering Questions and Answers
Software engineering Questions and AnswersBala Ganesh
 
Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020 Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020 MuhammadTalha436
 
Reverse Engineering
Reverse EngineeringReverse Engineering
Reverse Engineeringsiddu019
 
Gsd systematic task allocation evaluation in distributed software development
Gsd   systematic task allocation evaluation in distributed software developmentGsd   systematic task allocation evaluation in distributed software development
Gsd systematic task allocation evaluation in distributed software developmentShatakirti Er
 
Software Engineering Sample Question paper for 2012
Software Engineering Sample Question paper for 2012Software Engineering Sample Question paper for 2012
Software Engineering Sample Question paper for 2012Neelamani Samal
 
SE18_Lec 00_Course Outline
SE18_Lec 00_Course OutlineSE18_Lec 00_Course Outline
SE18_Lec 00_Course OutlineAmr E. Mohamed
 
Designite - Quick Start Guide
Designite  - Quick Start GuideDesignite  - Quick Start Guide
Designite - Quick Start GuideDesignite
 
PhD Thesis defense: Lightweight and Static verification of UML Executable Models
PhD Thesis defense: Lightweight and Static verification of UML Executable ModelsPhD Thesis defense: Lightweight and Static verification of UML Executable Models
PhD Thesis defense: Lightweight and Static verification of UML Executable ModelsElena Planas
 

Was ist angesagt? (19)

Sofware Engineering Important Past Paper 2019
Sofware Engineering Important Past Paper 2019Sofware Engineering Important Past Paper 2019
Sofware Engineering Important Past Paper 2019
 
Software engineering note
Software engineering noteSoftware engineering note
Software engineering note
 
Unit i software design principles 9
Unit i software design principles 9Unit i software design principles 9
Unit i software design principles 9
 
D1 research desc_and_outcome
D1 research desc_and_outcomeD1 research desc_and_outcome
D1 research desc_and_outcome
 
Manual t(se)
Manual t(se)Manual t(se)
Manual t(se)
 
4 mohammad naderuzzaman_finalpaper--35-40
4 mohammad naderuzzaman_finalpaper--35-404 mohammad naderuzzaman_finalpaper--35-40
4 mohammad naderuzzaman_finalpaper--35-40
 
Software engineering Questions and Answers
Software engineering Questions and AnswersSoftware engineering Questions and Answers
Software engineering Questions and Answers
 
Software engg unit 3
Software engg unit 3 Software engg unit 3
Software engg unit 3
 
Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020 Software Engineering Solved Past Paper 2020
Software Engineering Solved Past Paper 2020
 
Software engg unit 1
Software engg unit 1 Software engg unit 1
Software engg unit 1
 
Software engg unit 2
Software engg unit 2 Software engg unit 2
Software engg unit 2
 
Reverse Engineering
Reverse EngineeringReverse Engineering
Reverse Engineering
 
Gsd systematic task allocation evaluation in distributed software development
Gsd   systematic task allocation evaluation in distributed software developmentGsd   systematic task allocation evaluation in distributed software development
Gsd systematic task allocation evaluation in distributed software development
 
Se
SeSe
Se
 
Software Engineering Sample Question paper for 2012
Software Engineering Sample Question paper for 2012Software Engineering Sample Question paper for 2012
Software Engineering Sample Question paper for 2012
 
SE18_Lec 00_Course Outline
SE18_Lec 00_Course OutlineSE18_Lec 00_Course Outline
SE18_Lec 00_Course Outline
 
Designite - Quick Start Guide
Designite  - Quick Start GuideDesignite  - Quick Start Guide
Designite - Quick Start Guide
 
Unit 3
Unit 3Unit 3
Unit 3
 
PhD Thesis defense: Lightweight and Static verification of UML Executable Models
PhD Thesis defense: Lightweight and Static verification of UML Executable ModelsPhD Thesis defense: Lightweight and Static verification of UML Executable Models
PhD Thesis defense: Lightweight and Static verification of UML Executable Models
 

Andere mochten auch

CNO Q3 2015 Investor Presentation
CNO Q3 2015 Investor PresentationCNO Q3 2015 Investor Presentation
CNO Q3 2015 Investor PresentationCNOServices
 
เนื้อหาการเรียน วิชา คอมพิวเตอร์ (ง32202)
เนื้อหาการเรียน วิชา คอมพิวเตอร์  (ง32202)เนื้อหาการเรียน วิชา คอมพิวเตอร์  (ง32202)
เนื้อหาการเรียน วิชา คอมพิวเตอร์ (ง32202)Khemjira_P
 
Craig Lockerd – Best Practices For Recruiting
Craig Lockerd – Best Practices For RecruitingCraig Lockerd – Best Practices For Recruiting
Craig Lockerd – Best Practices For RecruitingSean Bradley
 
كتاب إله العهد القديم إله الدماء؟
كتاب إله العهد القديم إله الدماء؟كتاب إله العهد القديم إله الدماء؟
كتاب إله العهد القديم إله الدماء؟Ibrahimia Church Ftriends
 
الكنيسة والعبادة دستور الكنيسه الانجيليه بمصر
الكنيسة والعبادة    دستور الكنيسه الانجيليه بمصرالكنيسة والعبادة    دستور الكنيسه الانجيليه بمصر
الكنيسة والعبادة دستور الكنيسه الانجيليه بمصرIbrahimia Church Ftriends
 
Dokumentu tekniko eta zientifikoen edizioa LATEX bidez
Dokumentu tekniko eta zientifikoen edizioa LATEX bidezDokumentu tekniko eta zientifikoen edizioa LATEX bidez
Dokumentu tekniko eta zientifikoen edizioa LATEX bidezIgor Ruiz-Agundez
 
وحي من جهة مصر القس كرم لامعى - ونبر الكنيسه الانجيليه بالابراهيميه
وحي من جهة مصر    القس كرم لامعى  - ونبر الكنيسه الانجيليه بالابراهيميهوحي من جهة مصر    القس كرم لامعى  - ونبر الكنيسه الانجيليه بالابراهيميه
وحي من جهة مصر القس كرم لامعى - ونبر الكنيسه الانجيليه بالابراهيميهIbrahimia Church Ftriends
 
Haiwan di darat ( kad perkataan )
Haiwan di darat ( kad perkataan )Haiwan di darat ( kad perkataan )
Haiwan di darat ( kad perkataan )cikgupenmerah
 
Research khemjira
Research khemjiraResearch khemjira
Research khemjiraKhemjira_P
 
The virgin birth of christ chapter 1 the fundamentals
The virgin birth of christ chapter 1   the  fundamentalsThe virgin birth of christ chapter 1   the  fundamentals
The virgin birth of christ chapter 1 the fundamentalsIbrahimia Church Ftriends
 
Ricerca immigrati (fine cap.8)
Ricerca immigrati (fine cap.8)Ricerca immigrati (fine cap.8)
Ricerca immigrati (fine cap.8)silvanamaio
 
Normativa Mobile device, Marketing, Videosorveglianza
Normativa Mobile device, Marketing, VideosorveglianzaNormativa Mobile device, Marketing, Videosorveglianza
Normativa Mobile device, Marketing, VideosorveglianzaPolaris informatica
 

Andere mochten auch (18)

CNO Q3 2015 Investor Presentation
CNO Q3 2015 Investor PresentationCNO Q3 2015 Investor Presentation
CNO Q3 2015 Investor Presentation
 
เนื้อหาการเรียน วิชา คอมพิวเตอร์ (ง32202)
เนื้อหาการเรียน วิชา คอมพิวเตอร์  (ง32202)เนื้อหาการเรียน วิชา คอมพิวเตอร์  (ง32202)
เนื้อหาการเรียน วิชา คอมพิวเตอร์ (ง32202)
 
Craig Lockerd – Best Practices For Recruiting
Craig Lockerd – Best Practices For RecruitingCraig Lockerd – Best Practices For Recruiting
Craig Lockerd – Best Practices For Recruiting
 
كتاب إله العهد القديم إله الدماء؟
كتاب إله العهد القديم إله الدماء؟كتاب إله العهد القديم إله الدماء؟
كتاب إله العهد القديم إله الدماء؟
 
الكنيسة والعبادة دستور الكنيسه الانجيليه بمصر
الكنيسة والعبادة    دستور الكنيسه الانجيليه بمصرالكنيسة والعبادة    دستور الكنيسه الانجيليه بمصر
الكنيسة والعبادة دستور الكنيسه الانجيليه بمصر
 
Dokumentu tekniko eta zientifikoen edizioa LATEX bidez
Dokumentu tekniko eta zientifikoen edizioa LATEX bidezDokumentu tekniko eta zientifikoen edizioa LATEX bidez
Dokumentu tekniko eta zientifikoen edizioa LATEX bidez
 
കാന്‍സര്‍
കാന്‍സര്‍കാന്‍സര്‍
കാന്‍സര്‍
 
وحي من جهة مصر القس كرم لامعى - ونبر الكنيسه الانجيليه بالابراهيميه
وحي من جهة مصر    القس كرم لامعى  - ونبر الكنيسه الانجيليه بالابراهيميهوحي من جهة مصر    القس كرم لامعى  - ونبر الكنيسه الانجيليه بالابراهيميه
وحي من جهة مصر القس كرم لامعى - ونبر الكنيسه الانجيليه بالابراهيميه
 
Haiwan di darat ( kad perkataan )
Haiwan di darat ( kad perkataan )Haiwan di darat ( kad perkataan )
Haiwan di darat ( kad perkataan )
 
10 later people
10 later people10 later people
10 later people
 
Mwlanaمولانا ابراهيم عيسى
Mwlanaمولانا   ابراهيم عيسىMwlanaمولانا   ابراهيم عيسى
Mwlanaمولانا ابراهيم عيسى
 
Research khemjira
Research khemjiraResearch khemjira
Research khemjira
 
Kondisi kependudukan
Kondisi kependudukanKondisi kependudukan
Kondisi kependudukan
 
фотоалбум
фотоалбумфотоалбум
фотоалбум
 
The virgin birth of christ chapter 1 the fundamentals
The virgin birth of christ chapter 1   the  fundamentalsThe virgin birth of christ chapter 1   the  fundamentals
The virgin birth of christ chapter 1 the fundamentals
 
Ricerca immigrati (fine cap.8)
Ricerca immigrati (fine cap.8)Ricerca immigrati (fine cap.8)
Ricerca immigrati (fine cap.8)
 
Fall const
Fall constFall const
Fall const
 
Normativa Mobile device, Marketing, Videosorveglianza
Normativa Mobile device, Marketing, VideosorveglianzaNormativa Mobile device, Marketing, Videosorveglianza
Normativa Mobile device, Marketing, Videosorveglianza
 

Ähnlich wie 10.1.1.136.9597

Soft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptxSoft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptxKalpna Saharan
 
DESQA a Software Quality Assurance Framework
DESQA a Software Quality Assurance FrameworkDESQA a Software Quality Assurance Framework
DESQA a Software Quality Assurance FrameworkIJERA Editor
 
ccs356-software-engineering-notes.pdf
ccs356-software-engineering-notes.pdfccs356-software-engineering-notes.pdf
ccs356-software-engineering-notes.pdfVijayakumarKadumbadi
 
02_Introduction to Software Engineering(1).pptx
02_Introduction to  Software Engineering(1).pptx02_Introduction to  Software Engineering(1).pptx
02_Introduction to Software Engineering(1).pptxMarwondoMarwondo
 
A sustainable procedural method of software design process improvements
A sustainable procedural method of software design process improvementsA sustainable procedural method of software design process improvements
A sustainable procedural method of software design process improvementsnooriasukmaningtyas
 
Integrated Analysis of Traditional Requirements Engineering Process with Agil...
Integrated Analysis of Traditional Requirements Engineering Process with Agil...Integrated Analysis of Traditional Requirements Engineering Process with Agil...
Integrated Analysis of Traditional Requirements Engineering Process with Agil...zillesubhan
 
Software Architecture
Software ArchitectureSoftware Architecture
Software ArchitectureVikas Dhyani
 
Software Engineering
 Software Engineering  Software Engineering
Software Engineering JayaKamal
 
Software Engineering Process Models
Software Engineering Process Models Software Engineering Process Models
Software Engineering Process Models Satya P. Joshi
 
Elementary Probability theory Chapter 2.pptx
Elementary Probability theory Chapter 2.pptxElementary Probability theory Chapter 2.pptx
Elementary Probability theory Chapter 2.pptxethiouniverse
 
from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...
from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...
from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...Data & Analytics Magazin
 
Balancing software project drivers a rational quantitative approach
Balancing software project drivers   a rational quantitative approachBalancing software project drivers   a rational quantitative approach
Balancing software project drivers a rational quantitative approachPragmatic Cohesion Consulting, LLC
 
A New Software Engineeering Approach
A New Software Engineeering ApproachA New Software Engineeering Approach
A New Software Engineeering ApproachArunit Gupta
 
Software Development Life Cycle: Traditional and Agile- A Comparative Study
Software Development Life Cycle: Traditional and Agile- A Comparative StudySoftware Development Life Cycle: Traditional and Agile- A Comparative Study
Software Development Life Cycle: Traditional and Agile- A Comparative Studyijsrd.com
 
Model-Based Performance Prediction in Software Development: A Survey
Model-Based Performance Prediction in Software Development: A SurveyModel-Based Performance Prediction in Software Development: A Survey
Model-Based Performance Prediction in Software Development: A SurveyMr. Chanuwan
 

Ähnlich wie 10.1.1.136.9597 (20)

Soft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptxSoft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptx
 
DESQA a Software Quality Assurance Framework
DESQA a Software Quality Assurance FrameworkDESQA a Software Quality Assurance Framework
DESQA a Software Quality Assurance Framework
 
7 5-94-101
7 5-94-1017 5-94-101
7 5-94-101
 
ccs356-software-engineering-notes.pdf
ccs356-software-engineering-notes.pdfccs356-software-engineering-notes.pdf
ccs356-software-engineering-notes.pdf
 
02_Introduction to Software Engineering(1).pptx
02_Introduction to  Software Engineering(1).pptx02_Introduction to  Software Engineering(1).pptx
02_Introduction to Software Engineering(1).pptx
 
A sustainable procedural method of software design process improvements
A sustainable procedural method of software design process improvementsA sustainable procedural method of software design process improvements
A sustainable procedural method of software design process improvements
 
H1803044651
H1803044651H1803044651
H1803044651
 
Correctness
CorrectnessCorrectness
Correctness
 
Integrated Analysis of Traditional Requirements Engineering Process with Agil...
Integrated Analysis of Traditional Requirements Engineering Process with Agil...Integrated Analysis of Traditional Requirements Engineering Process with Agil...
Integrated Analysis of Traditional Requirements Engineering Process with Agil...
 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
 
using LPP
using LPPusing LPP
using LPP
 
Software Engineering
 Software Engineering  Software Engineering
Software Engineering
 
Chapter1
Chapter1Chapter1
Chapter1
 
Software Engineering Process Models
Software Engineering Process Models Software Engineering Process Models
Software Engineering Process Models
 
Elementary Probability theory Chapter 2.pptx
Elementary Probability theory Chapter 2.pptxElementary Probability theory Chapter 2.pptx
Elementary Probability theory Chapter 2.pptx
 
from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...
from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...
from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...
 
Balancing software project drivers a rational quantitative approach
Balancing software project drivers   a rational quantitative approachBalancing software project drivers   a rational quantitative approach
Balancing software project drivers a rational quantitative approach
 
A New Software Engineeering Approach
A New Software Engineeering ApproachA New Software Engineeering Approach
A New Software Engineeering Approach
 
Software Development Life Cycle: Traditional and Agile- A Comparative Study
Software Development Life Cycle: Traditional and Agile- A Comparative StudySoftware Development Life Cycle: Traditional and Agile- A Comparative Study
Software Development Life Cycle: Traditional and Agile- A Comparative Study
 
Model-Based Performance Prediction in Software Development: A Survey
Model-Based Performance Prediction in Software Development: A SurveyModel-Based Performance Prediction in Software Development: A Survey
Model-Based Performance Prediction in Software Development: A Survey
 

Kürzlich hochgeladen

What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 

Kürzlich hochgeladen (20)

What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 

10.1.1.136.9597

  • 1. 272 IJCSNS International Journal of Computer Science and Network Security, VOL.7 No.4, April 2007 A Process Model for Software Architecture A. Rama Mohan Reddy Dr. P Govindarajulu Dr. M M Naidu Associate Professor Professor Professor Department of Computer Science and Engineering Sri Venkateswara University College of Engineering / Arts and Science Sri Venkateswara University TIRUPATI – 517 502. Andhra Pradesh, INDIA ABSTRACT 2.1 The software life cycle model Software development life cycle (SDLC) is a process model adopted and followed during the development of software.. Software A descriptive model describes the history of how a Engineering encompasses software engineering process models, particular software system was developed [Curtis, project planning, management, and Software Development Life Cycle Krasner, Iscoe, 1988]. Prescriptive models are used as activities. In this paper, we are proposing a software process model for guidelines or frameworks to organize and structure how architecture-based software development from the conventional software development activities should be performed, models by taking spiral process model. This process model is coined as Software Architecture Development Life Cycle (SADLC). and in what order. Key words: Problem Software Architecture, Software Development Life Cycle, definition Components, connectors, configurations, Spiral model. Analysis 1. Introduction Design Software systems come and go, through a series of phases or activities that starts from the Inception, Initial Development, Productive Operation, Upkeep, and Retirement. The process Construction provides interaction between stakeholders and serves as the medium for communication, with each new round of the iteration eliciting more useful knowledge from the stakeholders. Testing Building computer software is an iterative learning process, and the outcome, called Software A software process defines the approach that is taken as software is engineered [PAU93]. This paper examines a number of methods for software modelling Maintenance how software systems are developed. It begins with related works and definitions of traditional software life cycle process models. These models that are in use that form as the basis for organizing a process model for software architecture 2. Related work Figure 1. Conventional Software development life cycle (SDLC) Many models explicitly used for the earliest projects for developing large software systems in the 1950’s and 1960’s Prescriptive models are also used to package the [Hosier 1961, Royce 1970]. Since the 1960’s many descriptions development tasks and techniques for using a given set of the classic software development life cycle have appeared of software engineering tools or environment during a [Hosier 1961], [Royce 1970], [Boehm 1976], [Distaso 1980], development project. [Scacchi 1984], and [Somerville 1999]. Royce [1970] began the formulation of the software life cycle using the familiar Descriptive life cycle models, characterize how waterfall model, shown in figure 1. particular software systems are actually developed in Manuscript received April 5, 2007 Manuscript revised April 25, 2007
  • 2. IJCSNS International Journal of Computer Science and Network Security, VOL.7 No.4, April 2007 273 specific settings. These two characterizations suggest that there are varieties of purposes for articulating software life cycle Clearly, this sequence of actions could entail multiple models. These characterizations serve as guidelines to organize iterations and non-procedural primitive action artifacts to be delivered the customer, tool and methods, and invocations in the course of incrementally progressing resource allocation and consumption [Boehm 1981]. toward an object-oriented software design. The progressive steps of software evolution are often To solve actual problems in an industry setting, a described as phases, such as requirements software engineer or a team of engineers must incorporate a specification, preliminary design, and implementation. development strategy that encompasses the process, Methods, and tools layers and the generic phases [Roger R.S Pressman, 2. 2 The linear sequential model 2003]. This strategy is often referred to as a process model or software engineering paradigm. The linear sequential model, sometimes called the Classic life or the waterfall model, proposed by winsten Royce [Roy 70]. The linear sequential Application model suggests a systematic, sequential approach to Domain of Objects software development that begins at the system level and progresses through analysis, design, coding, testing, and support as shown in figure 3. Object-Oriented . Analysis Information Object-Oriented Design engineering Analysis Object-Oriented Programming Design Testing Object-Oriented Construction Programs Testing Figure 2 Software Development Life Cycles for Object-Oriented Software Development All software development methods can be characterized as a Figure 3. Software Development Life Cycle for Conventional problem-solving loop in which four distinct stages are software development (The Linear Sequential Model). encountered. The current state of affairs, problem definition identifies the specific problem to be solved, technical development solves the problem through the application of some technology, and solution integration delivers the results, 2.3 The Prototyping Model documents, programs, data, new business function, new product, to those who requested the solution in the first place. Software A customer defines a set of general objectives process models often represent a networked sequence of for software but does not identify detailed input, activities, objects, transformations, and events that embody processing, or output requirements. In these, and many strategies for accomplishing software evolution. Software process networks can be viewed as representing multiple other situations, a prototyping paradigm may offer the interconnected task chains [Kling 1982, Garg 1989]. Task best approach chains can be employed to characterize either prescriptive or descriptive action sequences. Prescriptive task chains are 2. 4 The RAD Model idealized plans of what actions should be accomplished, and in what order. For example, as shown in figure 2, a task chain for Rapid application development (RAD) is an the activity of object-oriented software designs. incremental software development process model that emphasizes an extremely short development life cycle.
  • 3. 274 IJCSNS International Journal of Computer Science and Network Security, VOL.7 No.4, April 2007 It is a component-based construction, but high speed linear model, System development therefore spirals out only sequential. so far as needed according to the risk that must be managed. Finally, efforts are now in progress to 2. 5 Evolutionary Software Process Model integrate computer-based support for stakeholder negotiations and capture of trade-off rationales into an Software evolves over a period of time [GIL 88]. operational form of the WinWin Spiral Model [Boehm Evolutionary models are iterative. Iterative way of developing et al, 1998]. We are considering the parts of this model software is one of the modern software development processes. to propose Software Architecture Development Life Evolutionary models enable software engineers to develop Cycle. (SADLC). increasingly more complete versions of the software. 2.6 Incremental Models Planning It combines elements of the linear sequential model applied respectively with the iterative philosophy of prototyping. Risk First increment is often a core product. It is iterative in nature. Customer analysis communication 2.7 The Spiral Model The spiral model, proposed by Boehm [BOE 88], is an evolutionary software process model that couples the iterative a Customer nature of prototyping with controlled and systematic aspects of Evaluation Engineering and the linear sequential model as shown in figure 4. A spiral model construction is divided into a number of framework activities, also called tasks or regions. Customer communication is for effective communication between developer and customer. Planning is to Figure 4 The spiral process model define resources, timelines. Risk analysis is for assessing both technical and management risks. Engineering, Construction and release are to build one or more representations of the 2.8 The WinWin Spiral Model applications. Customer Evaluation is for obtaining customer The Customer wins by getting the system or feedback on evaluation of the software representations created product that satisfy the majority of the customer’s during the engineering stage and implemented during the needs and the developer wins by working to realistic installation stage. and achievable budgets and deadlines. Boehm’s WINWIN spiral model [BOE 98] defines a set of The spiral model of software development and evolution negotiation activities at the beginning of each pass represents a risk-driven approach to software process analysis around the spiral. and structuring (Boehm 1987, Boehm et al, 1998). This approach, developed by Barry Boehm, incorporates elements of 2.9 The Concurrent Development Model specification-driven, prototype-driven process methods, together with the classic software life cycle. It does so by The concurrent development model is also called representing iterative development cycles as an expanding spiral, concurrent engineering, Davis and Sitaram [DAV 94]. with inner cycles denoting early system analysis and The concurrent process model defines a series of prototyping, and outer cycles denoting the classic software life events that will trigger transitions from state to state cycle. The radial dimension denotes cumulative development for each of the software engineering activities. A costs, and the angular dimension denotes progress made in system and component activities occur simultaneously accomplishing each development spiral as shown in Figure 4. and can be modelled using the state-oriented approach Risk analysis, which seeks to identify situations that might described previously. Each activity on the network cause a development effort to fail or go over budget/schedule, exists simultaneously with other activities. occurs during each spiral cycle. 2.10 Component-Based Development In each cycle, it represents roughly the same amount of angular Object-Oriented technologies provide the displacement, while the displaced sweep volume denotes technical framework for a component-based increasing levels of effort required for risk analysis. In this process model for Software Engineering.
  • 4. IJCSNS International Journal of Computer Science and Network Security, VOL.7 No.4, April 2007 275 3. SOFTWARE ARCHITECTURE AND incremental development, the unified process defines ARCHITECTURAL ISSUES the function of the system by applying a scenario- based approach. It then couples function with an Object-Oriented Technologies provide the technical framework architectural framework that identifies the form the for a component-based process model for software engineering. software will take. Figure 6 shows the overview of the The Object-Oriented paradigm emphasizes the creation of transition from the Lines-Of-Code to architectural components that encapsulate both data and the algorithms used elements. to manipulate the data. The software architecture process model incorporates many of the characteristic of the spiral model and Object-Oriented process model. It is evolutionary in nature, Def. Analysis Design Code demanding an iterative approach to the creation of software. The engineering activity begins with the identification of candidate components from the business logic. Software Algorithms Lines architecture shift focus of developers from the line of the code And Of to coarse-grained architectural elements and their overall SDLC Data structures Code interconnection structure as shown in figure 5. Level 4: Components, Connectors and Architectural Issues Configurations Level 3: Sub-Program, Function, Module, *Components Components. *Connectors *Configurations Level 2: Lines-Of- Code Figure 6 Overview of Transitions from algorithms, Ds & LOC to Level 1: Algorithms and Data Architectural Elements 4. MODERN SOFTWARE Figure 5. Architecture is shown as it is above the algorithms and Lines- of- EVELOPMENT Code 4.1 Transition design methods to emphasize Architecture description languages (ADLs) have been proposed as Modeling notations to support architecture-based component-based development development. We have considered UML for Modeling. The Moving from a line-of-code mentality to a component- components and connectors identified in the analysis and design based mentality is necessary to reduce the amount of are used for architecture analysis and architecture design. The human-generated source code and custom first iteration of the application to compose and to build new development. components to meet the unique needs of the application. The Process flow then returns to the spiral and will ultimately re- enter the architectural issues loop during subsequent iteration Software architecture is the central design problem of through the engineering activity. The software architecture- a complex software system as shown in figure 7. based development model leads to software reuse, and Software architecture has several additional reusability provides software engineers with a number of dimensions of complexity. There are many heuristics measurable benefits. and fuzzy guidelines, but the fundamental measures of goodness are highly situation-dependent.. The The unified software development process is representative of a requirements model addresses the behaviour of the number of architecture-based development models that have system as seen by its end users, analysts, and testers. been proposed in the industry. Using the Unified Modeling This view is modeled statically using use case and Language (UML), the unified process defines the components class diagrams and dynamically using sequence, that will be used to build the system and the interfaces that will collaboration, state chart, and activity diagrams. The connect the components. Using a combination of iterative and design model addresses the architecture of the system
  • 5. 276 IJCSNS International Journal of Computer Science and Network Security, VOL.7 No.4, April 2007 and the design of the components within the architecture, Architecture including the functional structure, concurrency structure, implementation structure, and execution structure of the 5. A TECHNICAL PERSPECTIVE OF solution space, as seen by its developers. Static descriptions are THE ARCHITECTURE: provided with structural diagrams (like, class, object, component, deployment diagrams). Dynamic descriptions are Although software architecture has been discussed at provided with any of the UML, Behavioural diagrams length over the past decade, convergence on (collaboration, sequence, state chart, activity diagrams). definitions, terminology, and principles has been lacking. Software architecture encompasses the Figure 8, shows the procedure for architecture analysis and structure the software systems, their behaviour and the design. The input is from the business architecture or from patterns that guide these elements, their collaborations and their composition. An Architecture framework is software development life cycle. We propose here SADLC; it defined in terms of views that are abstractions of the has the every thing about Software Architecture Analysis, UML models in the design set. Most real-world Architecture design, Evaluation of design. It mainly systems require four views: design, process, concentrates on Architectural Issues component, and deployment. . A detailed view of transforming or generating Architecture elements from conventional SDLC is shown in figure 9. The transitions are shown gradually from SDLC to Software Application Analysis Design Construction Testing Domain Algorithms and Data Lines of Code Structures Architecture and Architectural Issues Components, Connectors, Configuration Software Architecture Architecture Architecture Applications Architecture Description Design Evaluation for Characteristics Languages Evaluation Design (ADLs) Methods alternatives Architecture Analysis Architecture Methods Designs Architecture Architecture Views Styles Figure 7 Software Development Life Cycle for Architecture-Based Software Development and its related issues
  • 6. IJCSNS International Journal of Computer Science and Network Security, VOL.7 No.4, April 2007 277 Business Architectures SDLC UML diagrams of Analysis and Design Analysis of Architectural Requirements Design of Architectures Evaluation of Design Alternatives Implementation of the architecture Figure 8 Software Architecture Development Life Cycles (SADLC) The purposes of these views are as follows and shown in comprise a mixture of custom and commercial figure 10. Design view, Process, Component view and components would also require a separate Deployment view. The design view is probably necessary in component view. The figure 10 summarizes the every system: the other three views can be added to deal with artifacts of the design set, including the architecture complexity of the system at hand. For example, any views and architecture descriptions are defined as distributed system would need a process view ad a collections of UML diagrams. deployment view Most large systems, as well as systems that Business Analysis Design Construction Testing Support Logic Algorithms and Data structures Lines-Of-Code SDLC Architectural Elements or Building blocks Components, Connectors, Configuration Architectural Requirements, Identification of Components, Connectors, and Configuration Types of Components, Connectors and Configurations Modeling Architectural Elements, Component, Connector, Models using UML Analysis of Components and connectors using UML Designing Architectural Elements using UML User Interface Development *SADLC an additional phase (UID) comes in to existence Configuration for Integrating Components, Structures, and Connectors for A Selected Style Figure 9 Software Development Life Cycles for Architecture-Based Software Development
  • 7. 278 IJCSNS International Journal of Computer Science and Network Security, VOL.7 No.4, April 2007 Requirements Design Implementation Deployment The design set includes all UML design models describing the solution space Design View Implementation View Use Case View Process View Deployment View Figure 10 Generation of software architectures from the design of SDLC. are necessary for architecture analysis, architecture 6. The proposed work design, architecture evaluation for particular quality attribute, architectural analysis and design methods, architectural styles, views, and for description of The process model adapted for object-oriented systems is a architectures (ADLs) that are shown in figures (7), (8), component assembly model [RSP 2003]. This model in turn (9), and (10). . In this regard, similar to the object- uses the spiral model. In spiral model one of the regions is oriented assembly process model, in the SADLC, the engineering and construction, from which the component control moves from spiral model to the architectural assembly model takes a separate path and enters Object- issues area with design (SDLC) information and Oriented software development area, where it searches for resolve all architectural issues. objects. If objects are found, they may be considered. Otherwise, using the concepts and principles of Object We are trying to understand and show the Oriented Analysis and Object Oriented Design, it constructs architectural elements are directly taken from business the required Objects and comes back and joins the architectures and design of conventional Software engineering and construction region of spiral model. Next it Development Life Cycle (SDLC). The proofs and goes for another spiral. This is way, it iterates till to achieve validity are being proposed in our extensions work. the required system. In the proposed work, the figure 11 shows the complete over view of the Software Architecture Development Life Cycle (SADLC). In SADLC we named some parts as spiral model area and architectural issues area. We have considered the conventional spiral model with out any deviation. The architectural issues, is the area, which encloses the principles and concepts of software architectures and every thing that
  • 8. IJCSNS International Journal of Computer Science and Network Security, VOL.7 No.4, April 2007 279 Identify candidate Architectural building Planning Risk Analysis Blocks from business Logic Architecture Rebuild Analysis Customer The Communication Configuration Architecture Design Transform Analysis & Design Customer Engineering and Architectural artifacts into Code level Evaluation Construction Spiral Model Architectural Issues Figure 11 The proposed process models for software architecture development process model. Conclusions [Boehm 1987] Boehm, B., A Spiral Model of Software Development and Enhancement, Computer, In software engineering, programming methodologies and 20(9), 61- 72, 1987. software process models play important role. These two [Boehm et al, 1998] Boehm, B., A. Egyed, J. Kwan, D. are interrelated and overlapped concepts and principles. Port, A. Shah, and R. Madachy, Using the Depending upon type, complexity and for particular non- WinWin Spiral Model: A Case Study, Computer, functional and functional requirements various models are 31(7), 33-44, 1998. proposed and being adopted. Software Architecture is a [Curtis, Krasner, Iscoe, 1988] Curtis, B., H. Krasner, and branch of Software Engineering; it also requires a N. Iscoe, A Field Study of the Software Design systematic and formal approach for implementing the Process for Large Systems, Communications concepts, principles while developing software ACM, 31, 11, 1268-1287, November, 1988 architectures. In this context we are proposing a process [DAV 94] Davis, A. and P. Sitaram, “A Concurrent model called Software Architecture Development Process Model for Software Development,” Lifecycle (SADLC). Software Engineering Notes, ACM Press, vol. 19, n0. 2, April 1994, pp. 38-51 [Distaso 1980] Distaso, J., Software Management--A References Survey of Practice in 1980, Proceedings IEEE, 68, 9, 1103-1119, 1980 [BOE 88] Boehm, B., “A Spiral Model for Software [GIL 88] Gilb, T., Principles of Software Engineering Development and Enhancement,” Computer, Vol. Management, Addison-Wesley, 1988. 21, no. 5, May 1988, pp. 61-72. [Hosier 1961] Hosier, W. A., Pitfalls and Safeguards in [BOE 98] Boehm, B., “Using the WINWIN Spiral Model: Real-Time Digital Systems with Emphasis on A Case Study,” computer, vol. 31, no. 7, July Programming, IRE Trans. Engineering 1998, pp, 33-44. Management, EM-8, June, 1961 [Boehm 1976] Boehm, B., Software Engineering, IEEE [Kling 1982, Garg 1989] Kling, R., and W. Scacchi, The Trans. Computer, C-25,12,1226-1241, 1976. Web of Computing: Computer Technology as [Boehm 1981] Boehm, B. W., Software Engineering Social Organization, Advances in Computers, 21, Economics, Prentice-Hall, Englewood Cliffs, N. 1-90, Academic Press, New York, 1982. J., 1981 Manuscript received April 5, 2007 Manuscript revised April 25, 2007
  • 9. 280 IJCSNS International Journal of Computer Science and Network Security, VOL.7 No.4, April 2007 [PAU93] Paulk, M et al., “Capability Maturity Model for Software,” Software Engineering Institute, Carnegie Mellon University, Pittsburgh, PA, 1993. [ROY70] Royce, W.W., “Managing the Development of Large Software Systems: Concepts and Techniques, “Proc. WESCON, August 1970. [RSP 2003] Roger R.S Pressman, Software Engineering 6th edition, 200 A Rama Mohan Reddy working as Professor of Computer Science and Engineering, Sri Venkateswara University., INDIA. He Completed his M.Tech Computer Science from NIT, Warangal. Currently he is pursuing Ph.D in software Architecture.