Incepting Enterprise Applications

Slides:



Advertisements
Similar presentations
Requirements Specification and Management
Advertisements

Components of a Product Vision/Strategy
© 2007 AT&T Knowledge Ventures. All rights reserved. AT&T and the AT&T logo are trademarks of AT&T Knowledge Ventures. Interactive Solutions & Design Group.
:: 1 :: What is a requirement? Standard Definition Something the product must do or a quality the product must have. More Ways to Characterize Something.
1 Software Requirement Analysis Deployment Package for the Basic Profile Version 0.1, January 11th 2008.
Introduction to Software Engineering Dr. Basem Alkazemi
Fact-Finding Fact-Finding Overview
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
1 CMPT 275 Software Engineering Requirements Analysis Process Janice Regan,
Handouts Software Testing and Quality Assurance Theory and Practice Chapter 11 System Test Design
Database System Development Lifecycle © Pearson Education Limited 1995, 2005.
Overview of the Database Development Process
Rational Unified Process Fundamentals Module 4: Disciplines II.
ITEC224 Database Programming
Demystifying the Business Analysis Body of Knowledge Central Iowa IIBA Chapter December 7, 2005.
Feasibility Study.
Certification and Accreditation CS Phase-1: Definition Atif Sultanuddin Raja Chawat Raja Chawat.
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
IT Requirements Management Balancing Needs and Expectations.
Some Sub-Activities within Requirements Engineering 1.Prototyping 2.Requirements Documentation 3.Requirements Validation 4.Requirements Measurements 5.Requirements.
Software Requirements Engineering: What, Why, Who, When, and How
Chapter 7 Applying UML and Patterns -Craig Larman
Approaching a Problem Where do we start? How do we proceed?
Lecture 7: Requirements Engineering
Search Engine Optimization © HiTech Institute. All rights reserved. Slide 1 What is Solution Assessment & Validation?
Develop Project Charter
Requirements Engineering Lesson 2. Terminologies:  Software Acquisition is where requirement engineering significantly meets business strategy.  Software.
Software Engineering 1 Object-oriented Analysis and Design Applying UML and Patterns An Introduction to Object-oriented Analysis and Design and Iterative.
Business Analysis. Business Analysis Concepts Enterprise Analysis ► Identify business opportunities ► Understand the business strategy ► Identify Business.
CASE (Computer-Aided Software Engineering) Tools Software that is used to support software process activities. Provides software process support by:- –
Project Initiation at The Regence Group 12/19/2015John Garrigues1.
Software Engineering Lecture # 1.
Requirements Engineering Process
Requirement Engineering
Requirement engineering & Requirement tasks/Management. 1Prepared By:Jay A.Dave.
Search Engine Optimization © HiTech Institute. All rights reserved. Slide 1 Click to edit Master title style What is Business Analysis Body of Knowledge?
Prepared by Amira Selim 31 st October 2009 Revised by Dahlia Biazid Requirements Analysis.
 System Requirement Specification and System Planning.
Why is Design so Difficult? Analysis: Focuses on the application domain Design: Focuses on the solution domain –The solution domain is changing very rapidly.
MANAGEMENT INFORMATION SYSTEM
Constructing Enterprise Applications
Project Cost Management
Architecting and Designing Enterprise Applications
Project Planning: Scope and the Work Breakdown Structure
EI Architecture Overview/Current Assessment/Technical Architecture
Methodology Conceptual Databases Design
Chapter 1 The Systems Development Environment
BA Continuum India Pvt Ltd
Fundamentals of Information Systems, Sixth Edition
Requirements Analysis Scenes
Methodology Conceptual Database Design
Computer Aided Software Engineering (CASE)
Topic for Presentaion-2
Class 7 – Inception Phase: Steps & techniques
Information Technology Project Management – Fifth Edition
Requirements Elicitation and Elaboration
Chapter 1 The Systems Development Environment
Process Improvement With Roles and Responsibilities explained
Engineering Processes
Chapter 1 (pages 4-9); Overview of SDLC
Introduction to Projects
Testing and Rolling Out Enterprise Applications
Usability Techniques Lecture 13.
An Introduction to Software Architecture
Introduction “Raising Enterprise Applications: A Software Engineering Perspective” by Anubhav Pradhan, Satheesha B. Nanjappa, Senthil Nallasamy, Veerakumar.
Business Modeling - Domain Analysis
Methodology Conceptual Databases Design
Engineering Processes
Lecture # 7 System Requirements
Chapter 1 The Systems Development Environment
Presentation transcript:

Incepting Enterprise Applications “Raising Enterprise Applications: A Software Engineering Perspective” by Anubhav Pradhan, Satheesha B. Nanjappa, Senthil Nallasamy, Veerakumar E Copyright  2010 Wiley India Pvt. Ltd. All rights reserved.

Introduction to Inception Incepting an enterprise application is the first life cycle phase of raising enterprise applications that primarily consists of the following activities: Enterprise analysis Business modeling Requirements elicitation & analysis Requirements validation Planning and estimation “Raising Enterprise Applications: A Software Engineering Perspective” by Anubhav Pradhan, Satheesha B. Nanjappa, Senthil Nallasamy, Veerakumar E Copyright  2010 Wiley India Pvt. Ltd. All rights reserved.

Enterprise Analysis Enterprise analysis is a holistic analysis of business enterprise that is typically done by business analysts, and comprise of following key activities: Identification of business opportunities and business changes. Identification of various stakeholders across business units. Collection of business requirements and prioritizing them. Define business roadmap with scope and exclusions. Contd…. “Raising Enterprise Applications: A Software Engineering Perspective” by Anubhav Pradhan, Satheesha B. Nanjappa, Senthil Nallasamy, Veerakumar E Copyright  2010 Wiley India Pvt. Ltd. All rights reserved.

Enterprise Analysis (Contd…) Conduct risk analysis and competitive analysis. Create RoI business cases with proper justification and getting the necessary approvals from the sponsors. “Raising Enterprise Applications: A Software Engineering Perspective” by Anubhav Pradhan, Satheesha B. Nanjappa, Senthil Nallasamy, Veerakumar E Copyright  2010 Wiley India Pvt. Ltd. All rights reserved.

Business Modeling Business modeling helps one to understand the business information and the business processes which an enterprise uses to fulfill its business goals. Enterprise analysis could lead to two forms of programs/projects: Creating something new/development project Extension/change to something which already exists/re-engineering project Business modeling is done by business analysts. Contd…. “Raising Enterprise Applications: A Software Engineering Perspective” by Anubhav Pradhan, Satheesha B. Nanjappa, Senthil Nallasamy, Veerakumar E Copyright  2010 Wiley India Pvt. Ltd. All rights reserved.

Business Modeling (Contd…) To understand the business problem at hand it’s essential to have AS-IS and TO-BE modeling of the business processes AS-IS business process model reflects the existing business process. TO-BE business process model reflects the desired business process. “Raising Enterprise Applications: A Software Engineering Perspective” by Anubhav Pradhan, Satheesha B. Nanjappa, Senthil Nallasamy, Veerakumar E Copyright  2010 Wiley India Pvt. Ltd. All rights reserved.

Introduction to Case Study-EM Bank Easy Money Bank(EM Bank) is a leading bank with its headquarters in Europe and offices and presence in another 50 countries. Some of the services offered by the EM bank are core banking , investment banking , mortgage and wealth management to name a few. To keep up with the market competition, the bank’s management has decided to expand the loan offerings and to reach out to more number of customers (both existing and new). Business Analyst has performed the task of business modeling and has come out with the AS-IS and TO-BE processes depicted in the two diagrams shown next. “Raising Enterprise Applications: A Software Engineering Perspective” by Anubhav Pradhan, Satheesha B. Nanjappa, Senthil Nallasamy, Veerakumar E Copyright  2010 Wiley India Pvt. Ltd. All rights reserved.

EM Bank- ‘AS-IS’ Process “Raising Enterprise Applications: A Software Engineering Perspective” by Anubhav Pradhan, Satheesha B. Nanjappa, Senthil Nallasamy, Veerakumar E Copyright  2010 Wiley India Pvt. Ltd. All rights reserved.

EM Bank- ‘TO-BE’ Process Text. “Raising Enterprise Applications: A Software Engineering Perspective” by Anubhav Pradhan, Satheesha B. Nanjappa, Senthil Nallasamy, Veerakumar E Copyright  2010 Wiley India Pvt. Ltd. All rights reserved.

Requirement Elicitation and Analysis Requirements elicitation and analysis is a systematic approach of capturing client requirements, analyzing them and documenting the problem domain. There are various kinds of requirements which need to be elicited and are broadly divided into two categories: Functional Requirements: capture what the system is expected to do - mechanisms such as Use cases and prototypes are used to depict functional requirements. Non Functional Requirements(NFR): NFRs capture how the system does what it is expected to do with respect to its constraints and expected qualities of service (QoS) such as reliability, scalability, portability, usability, availability, security and performance. “Raising Enterprise Applications: A Software Engineering Perspective” by Anubhav Pradhan, Satheesha B. Nanjappa, Senthil Nallasamy, Veerakumar E Copyright  2010 Wiley India Pvt. Ltd. All rights reserved.

LoMS Use Case Diagram “Raising Enterprise Applications: A Software Engineering Perspective” by Anubhav Pradhan, Satheesha B. Nanjappa, Senthil Nallasamy, Veerakumar E Copyright  2010 Wiley India Pvt. Ltd. All rights reserved.

Non Functional Requirements The NFRs of an enterprise application have a very high impact on the way the system has to be architected, designed and deployed. In fact, NFRs play a pivotal role in the validation of the architecture and design of enterprise applications. Key NFR Description Performance requirements Capture values such as peak load, throughput, response time Usability requirements Effective use of screen space, internationalization, easy navigability Scalability Requirements Data storage, planning for growth, resource utilization Contd…. “Raising Enterprise Applications: A Software Engineering Perspective” by Anubhav Pradhan, Satheesha B. Nanjappa, Senthil Nallasamy, Veerakumar E Copyright  2010 Wiley India Pvt. Ltd. All rights reserved.

Non Functional Requirements (Contd…) Key NFR Description Interface requirements Steps for integration of the application with other systems Operating requirements Security, Maintainability and Reliability requirements Lifecycle requirements Testing , portability, reusability Regulatory requirements Legal and other compliances to be followed Contd…. “Raising Enterprise Applications: A Software Engineering Perspective” by Anubhav Pradhan, Satheesha B. Nanjappa, Senthil Nallasamy, Veerakumar E Copyright  2010 Wiley India Pvt. Ltd. All rights reserved.

Non Functional Requirements (Contd…) Performance Requirements are related to the measure of performance constraints. Performance requirements Business perspective Technology perspective Types of transactions Types of users Usage patterns captures Operating environment details System and interface details Performance boundaries with respect to external systems Contd…. “Raising Enterprise Applications: A Software Engineering Perspective” by Anubhav Pradhan, Satheesha B. Nanjappa, Senthil Nallasamy, Veerakumar E Copyright  2010 Wiley India Pvt. Ltd. All rights reserved.

Non Functional Requirements (Contd…) Usability Requirements dictate the user experience Operating requirements are the constraints on the enterprise application which lay down the requirements related to security, maintainability and reliability of enterprise applications. Lifecycle requirements relate to needs that an application should fulfill at one or more stages of its lifecycle, and can be captured in terms of testability, reusability, portability and installability to name a few. Regulatory requirements capture the restrictions and the legal requirements related to certain categories of sensitive data, and ways in which they can be processed. “Raising Enterprise Applications: A Software Engineering Perspective” by Anubhav Pradhan, Satheesha B. Nanjappa, Senthil Nallasamy, Veerakumar E Copyright  2010 Wiley India Pvt. Ltd. All rights reserved.

Software Requirement Specification SRS Elements Description Business Overview Brief overview of what an enterprise does System Overview Overview of the system under consideration Functionality list List of business functionalities Use cases List of identified use cases NFR List of non functional requirements Prototypes Wireframes of the primary functionalities “Raising Enterprise Applications: A Software Engineering Perspective” by Anubhav Pradhan, Satheesha B. Nanjappa, Senthil Nallasamy, Veerakumar E Copyright  2010 Wiley India Pvt. Ltd. All rights reserved.

Requirements Validation Requirements validation is an exercise which is typically facilitated by business analysts to ensure that the requirements stated during requirement elicitation and analysis are meeting the business objectives. Requirements validation typically comprise of the following three activities: Ensuring the coverage of all business needs identified during enterprise analysis and requirements elicitation phase. Ensuring the requirements documentation sanctity by subject matter experts and end users. Ensuring the feasibility of requirements to the extent possible. There are many ways to perform requirement validation such as requirement traceability matrix (RTM), user acceptance test (UAT) cases and proof of concepts(PoC). “Raising Enterprise Applications: A Software Engineering Perspective” by Anubhav Pradhan, Satheesha B. Nanjappa, Senthil Nallasamy, Veerakumar E Copyright  2010 Wiley India Pvt. Ltd. All rights reserved.

Planning and Estimation The business case acts as the primary input for preparing the highest level planning document called Project Charter. Once the Project Charter is realized, detailed planning is done followed by the process of “estimation”, taking care of cost, schedule, size and effort required to build the enterprise application. A few of the popular estimation techniques are : Ballpark Estimation: involves decisions based on heuristics. Data available in the organization from similar projects, similar domains or industry standards are used for estimation. “Raising Enterprise Applications: A Software Engineering Perspective” by Anubhav Pradhan, Satheesha B. Nanjappa, Senthil Nallasamy, Veerakumar E Copyright  2010 Wiley India Pvt. Ltd. All rights reserved.

Planning and Estimation Use Case Point Estimation: The target functionality which is depicted in the form of Use case models is the basis for doing Use Case Point estimation. Function Point Estimation: A function point or FP is the unit to measure the functional size of the software under measurement. To perform FP estimation, a fully documented functional specification of the target software solution is needed. “Raising Enterprise Applications: A Software Engineering Perspective” by Anubhav Pradhan, Satheesha B. Nanjappa, Senthil Nallasamy, Veerakumar E Copyright  2010 Wiley India Pvt. Ltd. All rights reserved.