ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP...
Transcript of ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP...
![Page 1: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/1.jpg)
ERP Course: Planning, Design, and Implementation of ERPReadings: Chapter 3 Mary Sumner
Peter Dologdolog [at] cs [dot] aau [dot] dkE2-201Information SystemsNovember 1, 2006
![Page 2: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/2.jpg)
2Peter Dolog, ERP Course, ERP Development
SD
RiskAnalysis
RiskAnalysis
RiskAnalysis
RiskAnalysis
Proto-type 1
Prototype 2Prototype 3
OperationalPrototype
Emulations Models BenchmarksConceptof Operation
SoftwareRQTS
RequirementsValidation
Development Plan
RQTS Life CyclePlan
Integration andTest Plan
SoftwareProductDeisgn
Design Validationand Verification
Cumulative Costs
Progress ThroughSteps
DetailedDesign
Code
Unit Test
Integrationand Test
AcceptanceTestImplemen-
tation
Review
Commitment,Partition
Develop, VerifyNext Level
Product
EvaluateAlternatives,
Identify/ResolveRisk
DetermineObjectives,
Alternatives,Constraints
Plan Next Phase
![Page 3: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/3.jpg)
3Peter Dolog, ERP Course, ERP Development
ERP Implementation
Phases stay:• Planning• Requirements analysis• Design• Detailed design• Implementation• Maintanance
Focus changes• To fit the existing software (ERP) package to an
organization
![Page 4: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/4.jpg)
4Peter Dolog, ERP Course, ERP Development
Planning (Business justification)Inventory cost reductions
• Ability to use timely operational dataIT cost reductions
• Ability to integrate systems instead of maintaining many separatePersonnel cost reductions
• Ability to enhance systems without incurring the time and costof custom development and modifications
Increased profitability• Ability to introduce new features
Productivity improvement• Access online to real time data
Better cash management• Reduction in cost and time of systems development and
maintanace
![Page 5: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/5.jpg)
5Peter Dolog, ERP Course, ERP Development
Requirements Analysis
Analyzing business process (how company works)Analyzing how those process are already supportedSpecifying the processes to be supported in addition or change of
the current support Should fit with organization’s goals and competitive strategyAnalysis of technical infrastructureSpecification of technical infrastructure which should enable the
change
![Page 6: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/6.jpg)
6Peter Dolog, ERP Course, ERP Development
Selecting an ERP SystemCreate a visionCreate a feature listCreate a software candidate listNarrow the field to 4 - 6 candidatesCreate RFPSelect 2 - 3 finalistsSelect a winnerJustify the investmentNegotiate the contractRun a pre-implementation pilotValidate justification
![Page 7: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/7.jpg)
7Peter Dolog, ERP Course, ERP Development
Technology Factors
Cost of technology (start-up and recurring)Installation (support, time, and cost)User interfacesUpgradabilityComputing environmentPersonnel requirements (to use and to design)
![Page 8: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/8.jpg)
8Peter Dolog, ERP Course, ERP Development
Design
Re-engineering vs. CustomizationRe-engineering
• Analyse possibilities to change processes and organizationalstructures
• Design changes to fit ERP best practicesCustomization
• Analyse current processes• Suggest an ERP system change to fit it to existing processes
![Page 9: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/9.jpg)
9Peter Dolog, ERP Course, ERP Development
Re-Engineering vs. Customizing
Customizing+ Supports unique bussiness processes+ Strategic processes are maintained- Difficulty to introduce some changes- Difficulty with upgrades
Re-Engineering+ Features and processes supported by ERP+ Based on best practices- Does not support strategic or unique business processes- Resistance to organizational change
![Page 10: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/10.jpg)
10Peter Dolog, ERP Course, ERP Development
Re-engineering and customization factorsRe-engineering Customizing
Re-engineeringbusiness processes
Software system bestpractices
Independent of toolsbeing implemented
Organizational fit
works well with minimal changes but can disturbthe organization ifextensive changes arerequired
may disruptorganization lessbecause the software is designed to theprocesses
Evolution depends on vendor
evolution can support unique requirementbut create difficultieswhen a vendorugrades features youhave changed
![Page 11: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/11.jpg)
11Peter Dolog, ERP Course, ERP Development
Re-engineering Customizing
CostImplementation is costeffective
may involve extensivecosts of customimplementation
Requirements
boundaries set by business process models and bestpractices
more flexibility for custom requirements
Competitivnessother firms have the same settings
do not have to use thesoftware which othercompanies in industryadopted
FitNeed to fit to requirementsdrawn by the ERP
Unique requirementshas to be supported by a customization
Externalconsulting
Needed to cunsult business process change
Needed to consultsystem implementationchange
![Page 12: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/12.jpg)
12Peter Dolog, ERP Course, ERP Development
ERP Implementation Alternatives
Vanilla implementationSingle vendor with customizationIn-house with supplementary ERP modulesASP
![Page 13: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/13.jpg)
13Peter Dolog, ERP Course, ERP Development
Detailed Design
Select applicable business processesDiscard inaplicable business processesReorganize and document new processesIdentify ireas not covered by the best practices which require
customization and development
![Page 14: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/14.jpg)
14Peter Dolog, ERP Course, ERP Development
Models Used
Component model – show major functionsOrganization model – breakdown of oranization sttructureData model – information needed by a companyInteraction model – information flow between organizational
units
![Page 15: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/15.jpg)
15Peter Dolog, ERP Course, ERP Development
Implementation
Dialog customizationDialog connection customizationProcessing functions customizationData model customizationReports customizationIntegration with othe office systems
![Page 16: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/16.jpg)
16Peter Dolog, ERP Course, ERP Development
Protocols/Activities
![Page 17: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/17.jpg)
17Peter Dolog, ERP Course, ERP Development
Collabotation/Interaction Diagrams
![Page 18: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/18.jpg)
18Peter Dolog, ERP Course, ERP Development
+getName() : string+setName(in Name : string)+getSICCode() : string+setSICCode(in SICCode : string)+getLegalForm() : string+setLegalForm(in LegalForm : string)+getRevenue() : string+setRevenue(in Revenue : string)+getType() : string+setType(in Type : string)+getEmployees() : string+setEmployees(in Employees : string)+getStatus() : string+setStatus(in Status : string)+getAccountId() : string+setAccountId(in Status : string)+Account()+getAccountObject(in AccountId : string) : Account+getDetails(in Account : Account) : object
-Name : string-Code : string-LegalForm : string-Industry-Revenue-Type-Employees-Status-AccountId
Account
+Accounts()+getAccount(in AccountId : string) : Account+Accounts(in SalesMan : SalesMan, in Role : string) : Accounts+getAccountManager() : SalesMan+getNameIndex(in Accounts : Accounts) : object
Accounts
+SalesMan()+getSalesManObject(in SalesManId) : SalesMan+getName() : string+setName(in Name : string)+getRole() : string+setRole(in Role : string)+getSalesManId() : string+setSalesManId(in SalesManId : string)
-Name : string-Role : string-SalesManrId : string
SalesMan
+getName() : string+getPrice() : float+getItems() : int+getType() : string+getDescription() : string+getProductId() : string+setName(in Name : string)+setPrice(in Price : float)+setItems(in Items : int)+setType(in Type : string)+setDescription(in Description : string)+setProduct(in ProductId : string)
-Name : string-Price : float-Items : int-Type : string-Description : string-ProductId : string
Product
Products
+soldProduct
*
+Member
*+AccountSet1..*
*
+AccountManager*
*
+AccountManager
*
+MemberProduct*
+ProductSet*
*
+ProductManager
*
*
+ProductManager
*
![Page 19: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/19.jpg)
19Peter Dolog, ERP Course, ERP Development
Dialog Sequencing – clasify product
Modify Product
User
Connect(CategoryID, ProductID)
Categories Product
Set()
updateCagtegory(categoryOID)
CategoryProductDetails
Show()
Show()
fetch()
fetch()
![Page 20: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/20.jpg)
20Peter Dolog, ERP Course, ERP Development
Dialog Sequencing – user interaction
![Page 21: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/21.jpg)
21Peter Dolog, ERP Course, ERP Development
-Value(scenario)Contract
-Value(scenario)Portfolio
* *
«derived»
{All instances on contract on which self.filter is true}
ContractSelector
Date
Instrument Party
*
+primaryparties
*
*
+counterparties
** *
+start0..1* +end0..1 *
+selectContracts(in Collection)-isIncluded
ContractFilter
1..1
*
-Value(scenario)HardCodedFilter
BooleanMethod
*
+filter1..1
SetFilter SetOperation{documentation = Instances: Union, Intersection, Negation}
* 1..1
*
*
![Page 22: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/22.jpg)
22Peter Dolog, ERP Course, ERP Development
Client Customization
4G languages – forms• Adding, modifying attributes, control boxes, …• Adding/modifying client function• Adding/modifying connection to database• Adding/modifying menus, control flows, …
Client APIs• Externilize dialogs to functions• Allow to instantiate and embed client dialogs and functions
in external programs
![Page 23: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/23.jpg)
23Peter Dolog, ERP Course, ERP Development
Forms Development
![Page 24: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/24.jpg)
24Peter Dolog, ERP Course, ERP Development
Visual Basic for Applications
![Page 25: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/25.jpg)
25Peter Dolog, ERP Course, ERP Development
Message Queues (e.g. Navision)
public Form1() { // // Required for Windows Form Designer support //
InitializeComponent();
// // TODO: Add any constructor code after InitializeComponent call // mqFromNavision.Formatter = new
System.Messaging.XmlMessageFormatter(new Type[] {typeof(String)}); }
private void mqFromNavision_ReceiveCompleted(object sender, System.Messaging.ReceiveCompletedEventArgs e) { System.Messaging.Message m = mqFromNavision.EndReceive(e.AsyncResult); txtReceive.Text = (string)m.Body; }
![Page 26: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/26.jpg)
26Peter Dolog, ERP Course, ERP Development
Customer callingCall center software identifiesthe numberThe procedure at the callcenter site associated with sales telephones runs a procedure where a navision objects areembededA function for openning and looking up particular contact is implemented
![Page 27: ERP Course: Planning, Design, and Implementation …people.cs.aau.dk/~dolog/courses/lecture10.pdfERP Course: Planning, Design, and Implementation of ERP Readings: Chapter 3 Mary Sumner](https://reader033.fdocuments.us/reader033/viewer/2022042002/5e6e30a4a8ea1e5fc42610e3/html5/thumbnails/27.jpg)
27Peter Dolog, ERP Course, ERP Development
Business And Database Tier Customizations
Set of business functions and rulesLanguage to create them, e.g. Enterprise Java Beans, Oracle
Application Server procedures, Oracle stored proceduresAPIs/SDKs to access database and business functions on the
serverAutomation technology to embed and use it in external
programming environments and applicationsAdding attributes/tables/triggers