Pokok Bahasan 04 n Pokok Bahasan n n
Pokok Bahasan 04 n Pokok Bahasan n n Sub Pokok Bahasan 1. 2. 3. 4. 5. n Konsep ANSI SDLC Pendekatan Tools Methods Analis Sistem Kompetensi n Stl mengikuti kuliah ini mhs mampu menjelaskan pengertian BD & SBD, & aspek terkait dgn pengertian tsb Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com> 1
SDLC n n Sistem buatan manusia tdk ada yg sempurna Masalah yg dihadapi: n n n Perubahan kebutuhan baru Pertumbuhan organisasi / usaha Perkembangan teknologi Pengaruh luar Dinamika organisasi Sistem perlu dirubah Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com> 2
SOFTWARE ENGINEERING Penerapan & pemanfaatan prinsip-2 rekayasa u/ menghasilkan SW agar, 1. Ekonomis 2. Handal 3. Efisien Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com> 3
PENDEKATAN n n n Klasik vs Terstruktur Sepotong vs Sistem Bottom up vs Top down Sistem Menyeluruh vs Moduler Lompatan Jauh vs Berkembang Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com> 4
ELEMEN KUNCI SE 1. Tools 2. Methods 3. Procedures Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com> 5
TOOLS 1. 2. 3. 4. 5. 6. 7. DFD HIPO DD Decission Table PERT Sytems Flowchart dll Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com> 6
METHODS Pendekatan model air terjun Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com> 7
METHODS Paradigma prototyping Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com> 8
METHODS RPL menggunakan prototype Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com> 9
METHODS RPL menggunakan model spiral Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com> 10
METHODS Aktivitas utama dlm model spiral Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com> 11
TAHAPAN SDLC n 3 tahap 1. Analisis 2. Desain 3. Implementasi n 5 tahap n 1. 2. 3. 4. 5. 6. 7. 7 tahap Project Planning System Analysis System Design Construction/Implementation Integration and Testing Installation Operation & Maintenance 1. Perencanaan 2. Analisis 3. Desain 4. Implementasi 5. Penggunaan / review / evaluasi Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com> 12
n SDLC: 3 tahap 1. Analisis 1. 2. 3. 4. 5. 6. Menentukan masalah utama & lingkup kegiatan Mengumpulkan fakta Menganalisa fakta-fakta Menentukan alternatif pemecahan masalah Memilih alternatif pemecahan masalah Studi kelayakan: 1. Economic feasibility 2. Technicall feasibility 3. Law feasibility 4. Schedule feasibility 5. Operational feasibility 7. Laporan ke manajemen Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com> 13
2. Desain 1. Review kebutuhan 2. Desain umum / logikal 3. Desain terinci / desain fisik: 1. Input 2. Proses 3. Output 4. Database 5. Dialog 4. Laporan ke manajemen Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com> 14
3. Implementasi 1. 2. 3. 4. 5. 6. 7. Review desain Penjadwalan Coding program Testing program: 1. Testing modul 2. Testing menyeluruh Pelatihan petugas Konversi sistem Laporan ke manajemen Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com> 15
n SDLC: 5 tahap 1. Perencanaan Mengenali masalah 2. Menentukan masalah 3. Menentukan tujuan 4. Mengenali kendala 5. Studi kelayakan 6. Laporan ke manajemen 1. Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com> 16
2. Analisis 1. Menentukan kebutuhan informasi 2. Menentukan kriteria kinerja sistem 3. Laporan ke manajemen 3. Desain 1. General systems design = conceptual design = logical design 2. Detailed systems design = physical systems design = internal design Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com> 17
4. Implementasi Menyiapkan HW 2. Menyiapkan SW 3. Menyiapkan database 4. Menyiapkan fasilitas 5. Melatih pemakai 6. Laporan ke manajemen 1. 5. Penggunaan / review / evaluasi Operasional sistem 2. Evaluasi sistem 3. Memelihara sistem 4. Mempertahankan kinerja 5. Meningkatkan kinerja 6. Laporan ke manajemen 1. Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com> 18
SDLC: 7 tahap 1. Project Planning n n n 2. System Analysis n n n 3. Put project in context Small part of a much larger system? New system or modify old? Define user requirements Analyze tasks Develop specifications System Design - Define the system to be built n n Logical design Physical design Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
n Construction n n Integration and Testing n n Unit testing, system testing, acceptance testing Installation n n Write (or buy) the code Testing, training, conversion Operations & Maintenance n Put into production n Fix bugs, add facilities Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
The Classic Waterfall Methodology END PRODUCTS STAGES Planning/definition Project proposal report System proposal report Study/analysis Design specifications Programming Installation Maintenance Milestone 2 Design solution decision Milestone 1 Project initiation Year 1 Program code Testing and installation Postimplementation audit Milestone 4 Production decision Milestone 3 Design specification sign-off Year 2 Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com> OPERATIONS 3 -8 year lifespan
Difficulties in Software Development n Sotware quality: whether the software “fits for purpose”, satisfies all user requirements. n Example failures n It might work, but dreadful to use (user) n It is pretty, but does not do anything useful (user) n Users and owners may not know how to ask for what they really want, e. g. “We built what they said they wanted” (developer) n Budget and time constraints often conflict with doing the job properly, e. g. “There was not enough time to do it any better” (developer) n Difficulties for the possession of blended skills, e. g. “Do not blame me, I never done object-oriented analysis before” (developer) Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Software Development Process n Subdividing the process of software development into different phases n Ease of management to produce appropriate quality standard and to stay within the allocated budgest n Help to identify and allocate developers’ skills appropriately, and thus improve the quality of the task completion n Known as project life cycle model Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Difficulties in Software Development n Productivity: the progress of the project, and the resources (including time and money) that it consumes along the way (much related to project management) n Example failures n A system that is promised but not delivered (user) n It is no use delivering now, we need it last April (owner) n Projects that overspend their budget (owner) n Requirements drift, e. g. user changes their minds frequently(develper) n Implementation not feasible, e. g. we said it was impossible, but How to overcome them? no-one listened (developer) Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Project Life Cycle n Two important precursor phases are n Strategic Information Systems Planning n Business Modelling n Focus on organisation needs n They are not computational n Universially accepted for commercially oriented computer system development Don´t blindly follow the path to automation. The very first question is whether or not you even need a computer system. . . ” Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Generic Life Cycle Models n The Waterfall Model n Prototyping n Iterative and Incremental Development n The Unified Process Life Cycle Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Waterfall Life Cycle Requirements specification Functional specification Acceptance test specifications Unit test report Sub-system test report System test report Acceptance test report Completed system Software architecture specification System test specification Design specification Sub-system test specification Unit test specification Change requests Change request report Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Waterfall Life Cycle • The traditional life cycle (TLC) for information systems development. • So called because of the difficulty of returning to an earlier phase. • The drawback of the waterfall model is the difficulty of accommodating change after the process is underway Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
TLC with Iteration The cost of this form of iteration increases as the project progresses making it impractical and not effective Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Problems with TLC n n Real projects rarely follow such a simple sequential life cycle n Lapsed time between systems engineering and the final installation is long n Iterations are almost inevitable in real projects but are expensive & problematic with the TLC n Unresponsive to changes during project as iteration is difficult Therefore, this model is only appropriate when the requirements are well-understood Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Strengths of TLC n Provide a very structured way to system development n Tasks in phases may be assigned to specialized teams. n Project progress evaluated at the end of each phase, and assessment made as to whether the project should proceed Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Prototyping Life Cycle • Not intended to deliver the final working system • Quickly built up to explore some aspects of the system • May be used as part of other iterative life cycle Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Prototyping – Advantages n Early demonstrations of system functionality help identify any misunderstandings between developer and client n Client requirements that have been missed are identified n Difficulties in the interface can be identified n The feasibility and usefulness of the system can be tested, even though, by its very nature, the prototype is incomplete Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Prototyping – Problems n The client may perceive the prototype as part of the final system n The prototype may divert attention from functional to solely interface issues n Prototyping requires significant user involvement n Managing the prototyping life cycle requires careful decision making Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Incremental Development The Spiral Model (Boehm, 1988) Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Incremental Development n Iterative problem solving: repeats activities, each can be viewed as a mini-project n Incremental delivery, either external or internal release n New release = new functionality + (improved) previous release n Several approaches to structuring iterations n Define and implement the key system functions n Focus on one subsystem at a time n Define by complexity or risk of certain components Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Unified Process Life Cycle The Unified Process System Development Life Cycle Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Unified Process Life Cycle Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Unified Process Life Cycle n Captures many elements of best practice n The phases are: n Inception is concerned with determining the scope and purpose of the project; n Elaboration focuses requirements capture and determining the structure of the system; n Construction's main aim is to build the software system; n Transition deals with product installation and rollout. Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Choose Appropriate Life Cycle • TCL is highly predictive • Prototyping, Spiral and UP life cycle models are highly adaptive Predictive versus adaptive approaches to the SDLC Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Problem Biaya (Kasus Gunung Es) Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Distribusi Usaha Pengembangan Sistem Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Problem Kesalahpahaman Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
System Designers and System Builders System designer – a technical specialist who translates system users’ business requirements and constraints into technical solution. She or he designs the computer databases, inputs, outputs, screens, networks, and software that will meet the system users’ requirements. System builders – a technical specialist who constructs information systems and components based on the design specifications generated by the system designers. Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Systems Analysts Systems analyst – a specialist who studies the problems and needs of an organization to determine how people, data, processes, and information technology can best accomplish improvements for the business. • A programmer/analyst includes the responsibilities of both the computer programmer and the systems analyst. • A business analyst focuses on only the nontechnical aspects of systems analysis and design. Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
The Systems Analyst as a Problem-Solver n By "Problems" that need solving, we mean: n Problems, either real or anticipated, that require corrective action n Opportunities to improve a situation despite the absence of complaints n Directives to change a situation regardless of whether anyone has complained about the current situation Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Where Do Systems Analysts Work? Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Skills Needed by the Systems Analyst n Working knowledge of information technology n Computer programming experience and expertise n General business knowledge n General problem-solving skills n Good interpersonal communication skills n Good interpersonal relations skills n Flexibility and adaptability n Character and ethics Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
The Systems Analyst as a Facilitator Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Technology Drivers for Today’s Information Systems n Networks and the Internet n Mobile and Wireless Technologies n Object Technologies n Collaborative Technologies n Enterprise Applications Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Networks and the Internet Networks include mainframe time-sharing systems, network servers, and a variety of desktop, laptop, and handheld client computers. The most pervasive networking technologies are based on the Internet. n n n n XHTML and XML Scripting languages Web-specific programming languages Intranets Extranets Portals Web services Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Mobile and Wireless Technologies Some mobile and wireless technologies n n PDAs Smart phones Bluetooth Wireless networking Impact on information systems n n Wireless connectivity must be assumed Limitations of mobile devices and screen sizes must be accommodated Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Object Technologies Object technology – a software technology that defines a system in terms of objects that consolidate data and behavior (into objects). n n n Objects are reusable Objects are extensible Object-oriented programming languages include C++, Java, Smalltalk, and. NET Object-oriented analysis and design – a collection of tools and techniques for systems development that will utilize object technologies to construct a system and its software. Agile development – a system development strategy in which system developers are given the flexibility to select from a variety of tools and techniques to best accomplish the tasks at hand. Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Collaborative Technologies Collaborate technologies are those that enhance interpersonal communications and teamwork. n E-mail n Instant messaging n Groupware n Work flow Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
That’s it for today…. o Attention; o You must posting your resume, article, or task in your blog. . Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com>
Thank You! Khawp khun Shukriya Xie xie Kam sia Gum xia Arigato Komapsumnida Salamat Vinaka Istuti Terima kasih Matur nuwun Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com> 58
? Disiapkan oleh: edhy sutanta <edhy_sst@yahoo. com> 59
- Slides: 59